Здравствуйте! На последнем раунде (#72) для второго дивизиона была отличная для взломов задача B. Но не одного взлома у меня сделать не получилось :(
Что я сделал:
1) Сгенерировал макс. тест вида 100000\n<число 1 100000 раз через пробел>
2) Открыл окно взлома, вставил туда тест, нажал взломать. Мне выдало ошибку, точный текст ее я не помню (кстати, можно ли сейчас это где-нибудь посмотреть?), но было что-то вроде Unexpected character #13, expected ' '. Где он нашел лишний перевод строки - непонятно.
3) Взял генератор, сделал вывод в стандартный поток, отправил код. Результат - ошибка вида Input can't be empty. Может, не в cout нужно выводить?
Собственно, подскажите, как же правильно ломать?
З.Ы.: Когда я хотел написать это через Chrome, вместо русских символов печатались квадратики. Через IE такой проблемы не наблюдается. Это старый баг или мои локальные проблемы?
2) Если хотим отослать генератор, выбираем компилятор, выбираем ФАЙЛ (а не вставляем код генератора в окошко).
Например, такой код заработает:
cout << 100000 << "\n";
for (int i = 1; i <= 100000; i++)
{
cout << 1;
cout << (i < 100000) ? " " : "\n"; // последний символ - перевод строки!!!
}
Здесь все взломы, как я понимаю, прогоняются сначала на специальной программе - валидаторе. А валидаторы обычно (т.е. как захочет автор) требуют строгого соблюдения формата входных данных, с точностью до пробелов, переводов строк, ограничений и т.д.