|
|
|
|
|
|
|
Вернуться
| 21 Прыщенко Богдан Олегович, 18 марта 2009 г. 16:06:54 | |
|
ага, сидиш над алгоритмом, сначала его сложность считаеш (особенно важно лог(н) с точностью до 1ой милиардной посчитать), потом считаеш необходимое количество операций... И видиш, что задача а+б у теюя с отведенных 1с должна сработать за 0.001 и можно сабмитить:)
|
|
|
| 22 SOVA xxx, 18 марта 2009 г. 15:55:31 | |
|
но такие подробности в олимпиадном программирвоании не учитываются))
|
|
|
| 23 Прыщенко Богдан Олегович, 18 марта 2009 г. 15:48:47 | |
|
в принципе, при рассчетах надо учитывать разрядность, если операция на разрядности не более высокой, чем у процессора, то она выполняется аналогично 1ой елементарной. Если выше, то уже больше. берем операцию и смотрим... елементарная еденица разрядности - бит. Тоесть если на процессоре 32 на 1 увеличивать 8битный тип (скажем, байт в паскале, чар в С++), то 1 эл.операция, если 64 битный тип - то 2 операции.Надо погуглить, я не спец, но вроде бы так... или примерно так:)
|
|
|
| 24 SOVA xxx, 18 марта 2009 г. 15:32:55 | |
Артем но не будет же он думать про вермя в алгоритме сложения чисел от 1 до N)) а в среднем када операции не inc дето 2 млн грубо говоря)) uses DateUtils, SysUtils; var i, b: longint; d1, d2: TDateTime; Begin d1 := now; b := 0; for i := 1 to 1000000000 do inc(b); d2 := now; write(MilliSecondsBetween(d1, d2)); End. вот тебе пример тут за секунду пролетает примерно 300 млн операций!!! а если заменить inc(b) на b := trunc(sqrt(i)) то время работы увеливается в 12 раз!!! но это все равно проходит более 23 млн операции в секунду вообще я думал как то раньше что частота процессора равна количеству элементарных операций которые он выполняет за секунду а эти операции в самом процессоре и наскока я понимаю щас их в современных процессорах довольно дофига и разрядность тоже неплохая а если кому интересна эта тема то гугл вам поможет)))
|
|
|
| 25 Ладик Артём, 18 марта 2009 г. 15:18:04 | |
|
не правда... если алгоритм не сложный нет sqrt или sqr то за 1 секунду 30 млн проходит!
|
|
|
| 26 SOVA xxx, 18 марта 2009 г. 8:55:57 | |
|
)))смешной вопрос))операции в секунду делает процессор)))орентируйся так за секунду 2 млн операций
|
|
|
Чтобы оставить сообщение необходимо зарегистрироваться и авторизоваться!
| | | |