Школа программиста

Забыли пароль?
[задачи] [курсы] [олимпиады] [регистрация]
Логин:   Пароль:    
Скрыть меню
О школе
Правила
Олимпиады
Фотоальбом
Гостевая
Форум
Архив олимпиад
Архив задач
Состояние системы
Рейтинг
Курсы
Новичкам
Работа в системе
Алгоритмы
Курсы ККДП
Дистрибутивы
Ссылки

HotLog


 
Вернуться
Тема: Задача №945. Ограничение по памяти
1
  1  Прошин Николай Андреевич, 07 января 2019 г. 23:17:51
      Хворых Павел, спасибо за информацию!)
  2  Хворых Павел, 07 января 2019 г. 23:10:23
      1) Встроенный split бьет сразу всю строку на маленькие строки, которые занимают кучу памяти. Надо писать свою реализацию split: в цикле искать следующий пробел, брать подстроку между соседними пробелами и преобразовывать в число.
2) Хочется положить числа ai в set и дальше просто проверять наличие bi в этом set'е. Но set тоже занимает много памяти, лучше добавлять ai в list и проверять наличие очередного bi с помощью бинпоиска (в питоне есть встроенный - модуль bisect).
3) Если просто добавлять в list через append, то он тоже может занять много места. Поэтому правильнее сразу создать list правильного размера ([0] * N) и потом вручную записывать очередное считанное ai в нужную позицию.
  3  Прошин Николай Андреевич, 07 января 2019 г. 22:49:10
      Хворых Павел, если не секрет, как Вы до поднятия ограничения памяти смогли сдать задачу?
  4  Хворых Павел, 07 января 2019 г. 22:16:35
      Не появился, а увеличился в количестве)
  5  Прошин Николай Андреевич, 07 января 2019 г. 17:56:43
      Большое спасибо!
  6  Меньшиков Фёдор Владимирович, 07 января 2019 г. 9:05:24
      Подняли с 16 до 64. В лучших решениях появился Python.
  7  Прошин Николай Андреевич, 04 января 2019 г. 14:29:24
      Можно ли поднять лимит по памяти, чтобы сдать задачу на питоне?
1

Чтобы оставить сообщение необходимо зарегистрироваться и авторизоваться!

Красноярский краевой Дворец пионеров, (c)2006 - 2019, E-mail: admin@acmp.ru