Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 10 лет назад пользователемБогдан Тимков
1 Использование тестовой системы
2 Скачать дистрибутив тестовой системы
3 Установить contester
7 Запустить contester
8 Зайти на сервер на правах администратора
9 Создать турнир
11 Создать задачу
13 Оформить условие задачи
16 Добавить рисунки (если необходимо)
19 Создать тестовые пары
22 Добавить чекер Чекер проверяющая программа. Она должна быть добавлена к каждой задаче, загруженной в Contester. Чекер сопоставляет результат, который выдаёт программа участников с результатом тестовой пары Советы по созданию чекеров есть в файле utils\unJudge17.pas. Ознакомиться с текстами чекеров можно в уже имеющейся базе задач.
23 Варианты чекеров {$APPTYPE CONSOLE} uses SysUtils, {$IFDEF MSWINDOWS} unJudge17 in '..\utils\unJudge17.pas'; {$ELSE} unJudge17 in '../utils/unJudge17.pas'; {$ENDIF} var p, o: Int64; begin PatternTxt.ReadLongLong(p); OutputTxt.ReadLongLong(o); OutputTxt.MustBeEof; if p o then VRejectWA; VAccept; end. Чекер для программы, где результатом должно быть одно целое число
24 Варианты чекеров {$APPTYPE CONSOLE} uses SysUtils, {$IFDEF MSWINDOWS} unJudge17 in '..\utils\unJudge17.pas'; {$ELSE} unJudge17 in '../utils/unJudge17.pas'; {$ENDIF} var p, o: String; begin PatternTxt.ReadString(p); OutputTxt.ReadString(o); OutputTxt.MustBeEof; if p o then VRejectWA; VAccept; end. Чекер для программы, где результатом должна быть одна строка символов
25 Варианты чекеров uses SysUtils, {$IFDEF MSWINDOWS} unJudge17 in '..\utils\unJudge17.pas'; {$ELSE} unJudge17 in '../utils/unJudge17.pas'; {$ENDIF} const eps = 1.1e-1; var ja, pa: extended; begin ja := ans.readreal; pa := ouf.readreal; if abs(ja - pa) >eps then quit(_wa, 'Expected: ' + floattostr(ja) + ', found: ' + floattostr(pa)); quit(_ok, floattostr(ja)); end. Чекер для программы, где результатом должно быть одно вещественное число, с точностью до одно знака после запятой. За точность отвечает константа eps.
26 Варианты чекеров uses SysUtils, {$IFDEF MSWINDOWS} unJudge17 in '..\utils\unJudge17.pas'; {$ELSE} unJudge17 in '../utils/unJudge17.pas'; {$ENDIF} const eps = 1.1e-3; var ja1,ja2, pa1,pa2: extended; begin ja1 := ans.readreal; pa1 := ouf.readreal; ja2 := ans.readreal; pa2 := ouf.readreal; if ( abs(ja1 - pa1) >eps ) and ( abs(ja2 - pa2) >eps ) then quit(_wa, 'Expected: ' + floattostr(ja1) + ', found: ' + floattostr(pa1)); quit(_ok, floattostr(ja1)); end. Чекер для программы, где результатом должны быть два вещественных числа, с точностью до трёх знаков после запятой.
27 Варианты чекеров Uses SysUtils, {$IFDEF MSWINDOWS} unJudge17 in '..\utils\unJudge17.pas'; {$ELSE} unJudge17 in '../utils/unJudge17.pas'; {$ENDIF} function ending(x: longint): string; begin x := x mod 100; if x div 10 = 1 then ending := 'th' else case x mod 10 of 1: ending := 'st'; 2: ending := 'nd'; 3: ending := 'rd'; else ending := 'th'; end; Var j, p, n: longint; begin n := 0; while not ans.seekeof do begin inc(n); j := ans.readlongint; p := ouf.readlongint; if j p then quit(_wa, inttostr(n) + ending(n) + ' numbers differ - expected: "' + inttostr(j) + '", found: "' + inttostr(p) + '"'); end; quit(_ok, inttostr(n) + ' numbers'); end. Чекер для программы, где результатом будетпоследовательность целых чисел, Например, значения элементов массива. Числа будут сравниваться пока не закончится файл с ответами или не совпадёт какое-либо значение.
28 Добавить чекер
31 Сохранить настройки
33 Проверить задачу на собственном решении
34 Выгрузить zip-файл
36 Отправить архив задачи по электронной почте
37 Спасибо за внимание!
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.