Дистанционная подготовка: Ошибка во время выполнения программы
Re: Ошибка во время выполнения программы
от Peter Cherepanov - Вторник 24 Декабрь 2013, 09:09
  Эксперимент показывает,что у этой задачи стоят очень маленькие ограничения на память. Питон же, до памяти жаден. Сам интерпретатор занимает около 27M памяти. Предположим, что элемент списка имеет указатель, поле значения и поле аттрибутов. На 64-разрядной системе такой элемент займет 24 байта. А 0.3M элементов -- 7.5М. Получается, что для программы нужно не менее 35М памяти. А вся программа у меня прошла лишь на 38М.
$ (ulimit -v 34000; python3 2928.py)
Traceback (most recent call last):
  File "2928.py", line 4, in 
    nums = [True for i in range(max_num + 1)]
  File "2928.py", line 4, in 
    nums = [True for i in range(max_num + 1)]
MemoryError