ilona's blog

By ilona, 13 years ago, In Russian

Сегодня у меня попалась комната, ну очень хорошая для взломов. Листаю я коды (Задача А div. 2), и тут натыкаюсь на явно квадратичное решение, а ограничения на длину строк 10^5.

Пишу тест:

aaaaaa...aaa(10^5)

bbbbbb...bbb(10^5)

Отправляю просто скопировав из файла, который вывел мне мой тестген. Выходит ошибка, что невозможно обработать тест. Потом пробую отослать сам файл(txt) с тестом. Ошибка та же.

Задаю вопрос жюри. Они отвечают, что тест слишком большой, и надо писать программу, которая бы выводила тест в стандартный поток.

Думаю, ну ладно. Пишу генератор:

for (int i = 0; i < (int)1e5; i++)

cout << 'a';

cout << endl;

for (int i = 0; i < (int)1e5; i++)

cout << 'b';

cout << endl;

Отправляю, выходит ошибка "**Неизвестный вердикт:GENERATOR_CRASHED**", оказывается, генератор работает долго.

Не печалюсь, исправляю все на printf, ошибка та же.

Попробовала putchar, все равно ТЛ.

Думаю, запишу ка я все в строку, а потом выведу ее. Получаю ошибку памяти (ML).

В итоге, получилось завалить решение, когда я создавала строку длиной не 10^5, а только 30000.

Убила очень много времени, чтобы подогнать, чтобы не было ML и TL.

Как вообще поступать в таких ситуациях? А если бы решение было не совсем квадратичное, и на 30 000 заходило бы(со скрипом), а на 100 000 уже нет?

  • Vote: I like it
  • +12
  • Vote: I do not like it