Установка задач с открытыми тестами
Пример установки задачи с открытыми тестами
Известные проблемы
Пример установки задачи с открытыми тестами
Пишется чекер, как к стандартной задаче на программирование (см. здесь).
Далее делается файл task.cfg (см. здесь) следующего содержания:
- убран COUNT_BY и т.п.
- установлен TYPE = OPENTESTS
- задан формат имени выходного файла OPENTESTS ( %s соответствует номеру файла: tiny.o3 )
- включён чекер: CHECKER = 1
Помещаем его и чекер в папку задачи, делаем архив input.rar со входными файлами (переименованными согласно условию) и помещаем его в подпапку webfiles/ внутри папки с задачей.
Открываем F:/DL/Data/dldata/Tasks/139114.htm (по номеру задачи) и добавляем строчку со ссылкой на файл:
...
<p><pre>
<a href="webfiles/input.rar">Загрузить тесты< /a>
< /pre>< /p>< /body>< /html>
Установленная в примере задача находится здесь.
Известные проблемы
- Обнаружено путём отладки задачи 12_IOI_d1t1 - "Pebbling Odometer"
- Опция OUTPUT в task.cfg полностью игнорируется (во всяком случае, пользовательский файл вывода копируется без изменения имени: subtask_1.odo -> subtask_1.odo вместо subtask_1.odo -> program.odo)
- Подготовка к тестированию (удаление файла checker.exe, копирование содержимого входной директории) выполняется в tempdir/<time>/, а копирование файла вывода и чекера (и его запуск) – в cache/
- Как следствие, задачи с несколькими входными файлами (INPUT = DIRECTORY) с открытыми тестами не тестируются
- Очевидно, в ранее установленных задачах с открытыми тестами всегда был один входной файл, а не директория (и он копировался вместе с пользовательским файлом вывода)