|
|
Вопросы по системе (FAQ)
|
Somewho
|
Лимит памяти
Цитата
опубліковано 27.01.2012 14:59
Здравствуйте. Хотел бы узнать, как происходит подсчёт этого самого лимита памяти.
Вопрос возник, т.к. результаты выполнения некоторых моих программ ломают логику :)
К примеру:
= решение №590128 (задача №267): Лимит памяти: 976 KB из 65536 KB, 1.5%
= решение №590720 (задача №1, специально выбирал из самых лёгких): Лимит памяти: 1280 KB из 16384 KB, 7.8%
Я понимаю, нужна память под стек и всё такое, но в первом решении используется длинная арифметика (т.е. память как-никак, а использоваться будет, т.к. ограничение чисел 0<=x<=10^10000), а во втором выделяется одна целочисленная переменная.
Ещё: специально второе решение усложнил тем, что в самом начале программы выделяю место под двумерный массив 1000 * 2000 типа unsigned long long int (который 8 байт весит), т.е. всего ни много, ни мало, должно получиться 16 * 10^6 байт, или 15625 Кбайт. Ну, и, соответственно, перед закрытием программы я очищаю память из-под этого массива. Результат (решение №590724): Лимит памяти: 8472 KB из 16384 KB, 51.7%
Объясните пожалуйста, откуда получаются эти магические числа :)
|
|
Sylver
|
Цитата
опубліковано 06.02.2012 14:30
Я вже розв'язав декілька задач, але система пише, що розв'язаних задач - 0 і балів - 0. Поясніть, будь-ласка.
|
|
Dnipro_Power
|
Цитата
опубліковано 09.02.2012 14:05
Извините, но у меня вопрос по поводу задач на Паскале.
Каким образом можно считывать всю информацию до конца файла, если ,как я понял,
while not(eof(f)) do
...
не работает?
awpris відповів:
Работает - тут Вы не правы.
Как раз есть повод досконально разобраться в деталях реализации.
Удачи!
|
←
1
2
3
→
Відповісти
|