Питон на клетчатом поле

Revision ru1, by jhilary, 2016-06-26 01:01:40

Написала код для задачи http://codeforces.net/problemset/problem/680/E (про медведя на клетчатом поле) на Python. Застряла на 12м тесте с вердиктом "Превышено ограничение времени на тесте 12". Попробовала максимально оптимизировать написаный код, но все равно не выходило пройти ограничение по времени. Запускала с помощью pypy2 (если запускать python2, то выходит в 6 раз медленнее).

Последняя попытка здесь: http://codeforces.net/contest/680/submission/18710430

Будучи уверенной, что в асимптотике все верно, попробовала переписать на плюсах, повторяя логику кода на питоне один в один.

Сдала с первой попытки: http://codeforces.net/contest/679/submission/18726182

  • 12й тест, который не проходил на pypy2 с ограничением времени в три секунды, прошел за 561ms.
  • 11й тест(предыдущий) прошел в с++ версии за время вдесятеро меньшее, чем на pypy2

Вопросы:

  1. Можно ли оптимизировать мой питоновский код, чтоб он таки прошел ограничение? При том, что 12й тест не самый тяжелый. В списке сдавших эту задачу нет ни одного питониста
  2. Почему ограничения на задачу выставлены таким образом, что абсолютно одинаковые решения на двух языках находятся в неравных условиях?

Я пишу впервые, так что не знаю публикуется ли где-то пост в открытом месте. Если никто не прочитает, то вопросы оставляю здесь как риторические

Tags python 2, pypy, c++, вопросы

History

 
 
 
 
Revisions
 
 
  Rev. Lang. By When Δ Comment
ru1 Russian jhilary 2016-06-26 01:01:40 1364 Первая редакция (опубликовано)