Serve.cfg:problem:scoring checker

From EjudgeWiki
Revision as of 10:58, 28 February 2012 by Anna (talk | contribs) (Created page with "Навигация: Главная страница/Система ejudge/Использование/Конфигурационные файлы/[[serve...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Навигация: Главная страница/Система ejudge/Использование/Конфигурационные файлы/serve.cfg/Конфигурационные параметры задач/scoring_checker

Поддерживаются задачи, в которых балл за задачу (или за каждый тест) выставляется проверяющей программой. Чекер может оценивать тест в любое количество баллов от 0 и до максимального балла за данный тест.

Для этого поддерживается конфигурационная переменная scoring_checker. Если эта переменная установлена в значение 1, то балл за тест будет проставляться чекером.

В турнирах по системе KIROV/OLYMPIAD чекер оценивает каждый тест по отдельности, и суммарный балл за задачу равен сумме оценок чекера по каждому тесту. В турнирах по системе MOSCOW балл за задачу равен оценке чекера первого непройденного теста (в этом случае, разумнее всего, чтобы у задачи был единственный тест).

Оценивающий чекер должен работать следующим образом. Код завершения чекера, как обычно, обозначает результат проверки:

0       OK
4       PE
5       WA

все остальные коды интерпретируются как Check failed.

Если чекер вернул OK, то тест/задача всегда получает полный балл. Если чекер вернул PE, то тест/задача получает 0. Если чекер вернул WA, то на стандартный поток вывода он должен записать единственное число - балл за тест/задачу. Кроме числа и пробельных символов в стандартный поток вывода ничего выводиться не должно (иначе - Check failed). Число должно быть >= 0 и меньше максимального балла за задачу. Если выведено другое число - Check failed.