Настройки
Чтобы создать задачу:
- На вкладке Задачи нажмите кнопку Создать задачу.
- Придумайте название. Оно будет отображаться в интерфейсе участника.
Откроется страница с настройками задачи.
Общее
Короткое название задачи
Короткое название поможет быстрее искать задачу в списке.
Название
Это название увидят участники. Можно указать названия на русском и английском языках.
Тип задачи
В Контесте можно создавать два типа задач:
-
Задачи по программированию:
- PROBLEM_WITH_CHECKER — стандартные задачи по программированию. Система запускает код решения участника и подает на вход данные из тестов. Полученный ответ сравнивается с эталонным, указанным в системе.
- INTERACTIVE_PROBLEM — интерактивные задачи. Кроме текста задачи и тестов вам нужно подготовить специальную программу-интерактор. Система сначала запускает эту программу, затем полученные данные подает на вход решения участника, получает ответ и подает его обратно в интерактор.
-
Задачи, где ответ нужно дать в поле ввода
<input>:- TEST_PROBLEM — задача, в которой нужно выбрать один или несколько ответов из числа предложенных.
- TEXT_ANSWER_PROBLEM — задача, в которой нужно ввести ответ в текстовом поле.
- PROBLEM_WITH_MATCH_SETS — задача, в которой нужно сопоставить варианты по горизонтали с вариантами по вертикали.
Наборы с этой задачей
Это поле видно, только если задача добавлена в набор задач.
Использовать альтернативный рендерер для условий и правильных ответов
Эта настройка используется при использовании условий и комментариев к решению в формате TeX.
Если используется Альтернативный рендерер, доступен расширенный список инструкций языка KaTeX и после генерации создается файл HTML. Такие условия можно копировать и выделять.
Если не используется альтернативный рендерер, то при генерации конструкции TeX создается изображение, помещенное в файл HTML. Такое условие нельзя скопировать как текст. Список доступных конструкций языка TeX ограничен. Подробнее см. в описании условий задач.
Остальные настройки зависят от выбранного типа задачи.
Настройки файлов
Внимание
Только для задач типа PROBLEM_WITH_CHECKER и INTERACTIVE_PROBLEM.
Установите настройки, влияющие на поведение программы пользователя и ее взаимодействие с тестами.
Название входного файла
Имя файла, который подается на вход программы. По умолчанию это input.txt.
Название выходного файла
Имя файла, который подается на выходе из программы. По умолчанию это output.txt.
Разрешить чтение из stdin
Разрешает программе пользователя читать данные из stdin. По умолчанию включено.
Разрешить запись в stdout
Разрешает программе пользователя писать данные в stdout. По умолчанию включено.
Разрешить создание файлов
Разрешает программе создавать новые файлы в файловой системе Контеста. По умолчанию выключено.
Тип файлов теста
Ожидаемый тип файлов тестов, подаваемых на вход программе участника. Имеет два значения:
- TEXT — текстовые файлы. Выбрано по умолчанию.
- BINARY — бинарные файлы, например изображения или ZIP-архивы.
Ограничение размера исходного кода
Ограничение на размер программы пользователя. По умолчанию это 256 КБ. При превышении участник увидит ошибку Превышено ограничение по размеру исходного кода
.
Ограничения на запуск
Внимание
Только для задач типа PROBLEM_WITH_CHECKER и INTERACTIVE_PROBLEM.
Установите ограничения, которым должна удовлетворять программа участника. Ограничения действительны для одного запуска программы на одном из тестов.
Примечание
Для большинства соревнований и задач достаточно настроек по умолчанию. Если вы выставите слишком большие ограничения, это может привести к нестабильной работе Контеста, а задачи участников будут долго проверяться.
Ограничение по времени
Максимальное время выполнения проверки задачи. При превышении участник получается вердикт TL (time limit exceeded). По умолчанию это 1 с.
Ограничение по времени ожидания
Максимальное время ожидания вывода данных программой. При превышении участник получается вердикт IL (idleness limit exceeded). По умолчанию это 10 с.
Ограничение памяти
Максимум оперативной памяти, которую может использовать программа участника. При превышении участник получает вердикт ML (memory limit exceeded). По умолчанию это 64 МБ.
Ограничение на объем вывода
Максимум объема данных, выводимых программой участника. При превышении участник получает вердикт OL (output limit exceeded). По умолчанию это 64 МБ.
Добавить частные ограничения
Вы можете установить отдельные ограничения на запуск для конкретного компилятора:
- Включите опцию Добавить частные ограничения.
- Выберите компилятор из списка и нажмите Добавить.
- Задайте ограничения. Набор идентичен ограничениям на запуск задачи.
Ограничения на компиляцию
Внимание
Только для PROBLEM_WITH_CHECKER и INTERACTIVE_PROBLEM.
Установите ограничения, которым должна удовлетворять программа участника на этапе компиляции. Ограничения такие же, как и для запуска задачи.
Настройки чекера
Чекер — это программа, которая проверяет вывод кода участника и сообщает результат системе в виде кодов возврата. Чекер помогает автоматизировать проверку задач и избежать лишней работы при выставлении баллов.
Откройте задачу и в меню слева выберите Настройки чекера.
Тип чекера
При проверке могут использоваться следующие типы чекеров:
- STANDARD_CHECKER — стандартный чекер Контеста. Выбран по умолчанию.
- EJUDGE_EXITCODE_CHECKER — оперирует кодами возврата системы Ejudge.
- TESTLIB_EXITCODE_CHECKER — оперирует кодами возврата библиотеки testlib.
- TESTLIB_CHECKER — оперирует кодами возврата библиотеки testlib для Pascal.
Другие настройки чекера
Вы также можете:
- выбрать ID чекера из стандартных программ (для STANDARD_CHECKER);
- настроить передачу баллов;
- добавить файлы чекера.
Подробнее о настройках см. раздел Чекеры.
Дополнительные файлы и обработки
Файлы для времени запуска
Выберите файлы, которые будут скопированы в корневую директорию во время запуска программы.
Файлы для компиляции
Выберите файлы, которые будут скопированы в корневую директорию во время компиляции программы участника.
Файлы для постпроцессора
Выберите файл с программой-постпроцессором. Постпроцессор — программа, которая выполняется после того, как все проверки задачи закончены. Постпроцессор получает на вход весь лог тестирования, а затем интерпретирует его в конечный вердикт или балл, который возвращается участнику.
Посмотреть примеры доступных постпроцессоров можно на нашем Диске. Обратите внимание на файл postprocessor.py, который используется совместно со scoring.json. Это самое частое использование постпроцессоров, когда балл за решение задачи нужно поставить, исходя из решенных групп тестов.
Обратите внимание, что баллы за задачу с помощью постпроцессора будут выставляться только в соревнованиях с типом монитора SCORING. Подробнее см. Мониторы.