![]() |
Pascal
Имеется задача:
http://imageban.ru/show/2009/09/01/2...a22e13c429/jpg Код написан: Код:
{$N+,E-} А теперь главное: ограничения программы указываются для компьютера Intel Celeron 400. Программа при M и N близких к граничным значениям работает куда больше 6 секунд! Как с этим бороться? |
Чем вы компилируете и под какой ОС и на какой машине запускаете?
И дайте пример файла primes.in на котором тормозит. divisor := divisor + 1; - заменяем на inc(divisor); И освобождаем ресурсы! Также смотрим:Решето_Эратосфена и http://www.helloworld.ru/texts/comp/...mple/index.htm |
Цитата:
Расставь комментарии пожалуйста. Или опиши применяемый метод. Цитата:
T=n/2+n/3*2)+E{n/i-2} 5<i<sqrt(n) сравнений? где i - простое. E - сумма. сравнений? Не лень алгоритму будет подниматься каждый раз снизу вверх проходя каждый каждый 3 раз 1 лишний цикл, каждый 5 ый - 3 и т.д. ? Я подвожу к той мысли, что в памяти мы вроде как не сильно ограничены. Примени массив простых чисел и сверяй с ним! Зачем по 100 раз совершать ненужные действия? Для i=123 будут проверены ВСЕ! числа включая все кратные 2,3,5,7,11,13,17,19,23 и т.д. Не проще ли сразу на них проверить? |
Время: 19:44. |
Время: 19:44.
© OSzone.net 2001-