Как писать чекеры
Написание кастомного чекера необходимо для многих задач.
Вердикты
- Если чекер возвращает 0, то считается, что вердикт
Ок - Если чекер возвращает 1, то считается, что вердикт
Неправильный ответ - Если чекер возвращает 2, то считается, что вердикт
Неправильный формат вывода - Если чекер возвращает какой-либо другой код, то считается, что вердикт
Некорректная задача
Аргументы командной строки
Чекеру передаются аргументы командной строки в следующем порядке:
Обычные задачи
- Путь к тесту
- Путь к ответу участника
- Путь к ответу жюри
Интерактивные задачи
- Путь к ответу участника
- Путь к ответу чекера
- Путь к тесту
Задачи с двойным запуском
- Путь к тесту
- Путь к ответу участника
- Путь к ответу жюри
- Стадия
Задачи с двойным запуском с какими-то из них интерактивными
- Путь к ответу участника
- Путь к ответу чекера
- Путь к промежуточному ответу чекера (ответу между стадиями)
- Путь к тесту
- Стадия
Стадии
Задачи с двойным запуском
- Стадия
0– подготовка теста для первого запуска - Стадия
1– проверка ответа участника на первом запуске и подготовка теста для второго запуска - Стадия
2– проверка ответа участника на втором запуске
Интерактивные задачи с двойным запуском
- Стадия
0– первое интерактивное взаимодействие - Стадия
1– второе интерактивное взаимодействие
Задачи с двойным запуском, причём первый из них – интерактивный
- Стадия
0– интерактивное взаимодействие - Стадия
1– проверка ответа участника на втором запуске
Интерактивные задачи с двойным запуском
- Стадия
0– подготовка теста для интерактивного взаимодействия - Стадия
1– интерактивное взаимодействие