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

Уменьшение времени работы программы - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Напишите программу с if http://www.cyberforum.ru/cpp-beginners/thread994684.html
Предположим, что A говорит: "Или я лжец, или два плюс два - пять". К какому заключению можно прийти на основании этого утверждения?
C++ поскажите или напишите программу с циклом if( 29. Предположим, что A говорит: "Или я лжец, или B рыцарь". Кто из двух персонажей A и B рыцарь и кто лжец? http://www.cyberforum.ru/cpp-beginners/thread994681.html
C++ Переменная в TextBox
пишу в TextBox переменную: float p=1; textBox2->Text = p.ToString(); но допустим у меня g=g+1;
Задача по программированию(неудачный перевод кода) C++
Во время экперимента Накодиллы было случайно получено сообщение инопланетян, содержащее формулу вида A + B = C. Общественности стало интересно, какую же систему счисления используют инопланетяне. Так как внеземная цивилизация была достаточно развита, чтобы отправить межпланетное сообщение, Накодилла предположил, что основание системы счисления довольно мало. Требуется написать программу,...
C++ как понять строку declare http://www.cyberforum.ru/cpp-beginners/thread994676.html
SWITCH_DECLARE(const switch_state_handler_table_t *) switch_core_get_state_handler(_In_ int index); не понятно зачем в возвращаемом параметре стоит Слово const
C++ Составить и проверить функцию, которая переставляет цифры заданного целого числа N1 в обратном порядке и получает новое число N2 8. Составить и проверить функцию, которая переставляет цифры заданного целого числа N1 в обратном порядке и получает новое число N2. Например, если N1=425, то N2=524. подробнее

Показать сообщение отдельно
ValeryS
Модератор
6506 / 4972 / 459
Регистрация: 14.02.2011
Сообщений: 16,474
01.11.2013, 20:04     Уменьшение времени работы программы
Инспектор Котик,
у тебя алгоритм не тот
во первых ты выделяешь память при максиме это 101 одно выделение памяти
потом 10000 обращений к памяти чтобы обнулить
далее чтобы что то записать в ячейку ты гуляешь по указателям, тоже тормоза
выдели статический массив всего то 10000 ячеек (при инте 40000 байт памяти)
а чтобы его не обнулять сделай или глобальным или static
скорость возрастет

Добавлено через 7 минут
Цитата Сообщение от Инспектор Котик Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
for(int i = 0; i < w; i++)
 {
  for(int j = 0; j < h; j++)
   {
     if(canvas[i][j] == 1)
     {
        c++;
     }
  }
 }
c = (w * h) - c;
дальше
ты считаешь закрашенные а потом вычитаешь из общего
тут тормоза *if(canvas[i][j] == 1)
зачем???
закрашенные 1 не закрашенные 0
т.е прибавишь незакрашенную ячейку результат не изменится
C++
1
с+=canvas[i][j];
можно сразу считать незакрашенные
примерно так
C++
1
2
3
4
c = (w * h);
for(int i = 0; i < w; i++)
  for(int j = 0; j < h; j++)
      c-=canvas[i][j];
 
Текущее время: 13:22. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru