Ограничения: время – 4s/8s, память – 32MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод
Послать решение Blockly Посылки Темы Где Обсудить (2)
Требуется написать проверяющую программу для задачи:
Вывести все разложения натурального N () в виде суммы натуральных слагаемых. Разложения, отличающиеся порядком слагаемых, считаются одинаковыми.
Пример ввода
4
Возможный вывод для этого ввода
1+1+1+1
1+2+1
2+2
1+3
Входной файл в первой строке содержит `N`, затем идёт перевод строки, и вся оставшаяся часть файла – это вывод программы, решающей (верно или неверно) исходную задачу. Гарантируется, что размер входного файла не превышает 1 Мб.
В выходной файл нужно вывести один из трёх ответов: "Accepted" – если представлены все разложения в корректной форме, "Wrong answer" – если какое-то разложение повторяется или какого-то не хватает, "Presentation error" – если формат выходных данных исходной задачи не соблюдается, а именно:
- вывод пуст
- есть пустые строки
- в какой-то строке есть символы, кроме цифр и плюса
- в строке нет плюса, строка начинается или заканчивается плюсом, есть два плюса подряд
- число начинается с нуля
- сумма чисел в строке не равна заданному `N`
Ошибка Presentation error имеет приоритет над Wrong answer – если в начале файла есть две одинаковые строки, а в конце файла есть пробел, то ответ Presentation error.
Пример ввода 1
3
1+2
1+1+1
Пример вывода 2
Wrong answer
Пример ввода 3
3
I don't know
Пример вывода 3
Presentation error
Источник: VII межвузовская олимпиада по программированию Вологда, 2004