Форум программистов, компьютерный форум CyberForum.ru

Задача про зерна на шахматной доске - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Описать класс «записная книжка» http://www.cyberforum.ru/cpp-beginners/thread730700.html
Описать класс «записная книжка». Предусмотреть возможность работы с произвольным числом записей, поиска записи по какому-либо признаку (например, по фамилии, дате рождения или номеру телефона), добавления и удаления записей, сортировки по разным полям. Написать программу, демонстрирующую работу с этим классом. Программа должна содержать меню, позволяющее осуществить проверку всех методов класса.
C++ Ошибка в сортировке #include <iostream> #include <string> #include <algorithm> int const N = 5; using namespace std; class book{ public: http://www.cyberforum.ru/cpp-beginners/thread730691.html
C++ Описать класс "домашняя библиотека"
Помогите, пожалуйста в решении одной из 3х задач.Буду благодарна!!! 1.Описать класс «домашняя библиотека». Предусмотреть возможность работы с произвольным числом книг, поиска книги по какому-либо признаку (например, по автору или по году издания), добавления книг в библиотеку, удаления книг из нее, сортировки книг по разным полям. Написать программу, демонстрирующую работу с этим классом....
C++ Наибольшая общая подстрока
какие алгоритмы есть для нахождения Наибольшой общей подстроки?
C++ Как вывести матрицу смежности по заданной матрице весов дуг? http://www.cyberforum.ru/cpp-beginners/thread730685.html
Программа, реализующая алгоритм Флойда для поиска кратчайшего пути. Пользователь вводит ко-во вершин, затем указывает веса дуг, если вершины не соединены, то вес дуг = 0. Выводится матрица весов. Как сделать, чтоды выводилась матрица смежностей после матрицы весов? Floyd.h #ifndef _FLOYD_H_ #define _FLOYD_H_ #include <vector> #include <iostream> #include <iomanip> #include <algorithm>...
C++ Тонкость с указателями - взятие указателя на базовый класс Как-то возник в голове вопрос: пусть класс D наследует классы A и B. Если у меня есть объект D, я беру его адрес и типизирую его к базовым классам A и B. Получаю два указателя типа A* и B*. Будут ли они указывать на корректные объекты? Я всегда предполагал, что конструкции типа: Type1 *a = (Type1*)b; это указания компилятору интерпретировать данные по указателю b как данные типа Type1. А... подробнее

Показать сообщение отдельно
ValeryS
Модератор
6410 / 4876 / 447
Регистрация: 14.02.2011
Сообщений: 16,170
13.12.2012, 22:38     Задача про зерна на шахматной доске
Цитата Сообщение от prazuber Посмотреть сообщение
включенной оптимизацией в VS2012.
С включеной оптимизацией чего???
там 100500 параметров
и потом если проводишь тесты выбрасывай вывод на экран

Цитата Сообщение от prazuber Посмотреть сообщение
Как видно, второй вариант работает медленнее,
мне например это не видно
если выбросить весь мусор то
Assembler
1
2
3
4
;a *= 2
 
  lea         ebx,[ebx+esi*2]  
  add         esi,esi
Assembler
1
2
3
4
5
 ; a = 1 << k;
 mov         ecx,edi  
  mov         esi,1  
 shl         esi,cl  
 add         ebx,esi
разница в два mov которые скорее всего исполнятся за один такт
и я не знаю сколько тактов занимает lea (некогда сейчас искать, но по моему её скорость зависит от аргумента)
а shl всего один такт
так что так огульно, без растактовки кто быстрее я бы не стал говорить

Цитата Сообщение от prazuber Посмотреть сообщение
а так же менее читабелен.
для тех кто не знаком с двоичной арифметикой, да это темный лес
 
Текущее время: 16:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru