Режим OLYMPIAD

Обсуждение вопросов, связанных с системой проведения турниров ejudge.
Post Reply
Fenixoff
Posts:16
Joined:04 November 2012, 01:43
Режим OLYMPIAD

Post by Fenixoff » 04 November 2012, 13:47

Здравствуйте еще раз!
Подскажите пожалуйста, какую комбинацию параметров турнира требуется использовать, чтобы организовать соревнование, по правилам IOI: участники сдают решения, эти решения проверяются на нескольких первых тестах (примерах из условия) и результаты этой проверки им полностью доступны. Если посылка не прошла эти тесты, то дальнейшее тестирование не производится, иначе же посылка тестируется на всех тестах и результат виден жюри и участникам после соревнования. При этом желательно, чтобы за тесты из примера участники не получали никаких баллов (конечно же можно потом вычитать баллы за первые тесты, так что это уже не критично).
Мои попытки использовать Number of accept tests = 3 и Test scores for test = "0 0 0" к положительному результату не привело - задача, проваливающая все тесты, все равно принимается и участник видит вердикт ОК.
Заранее спасибо!
Last edited by Fenixoff on 04 November 2012, 15:11, edited 1 time in total.

dk
Posts:129
Joined:25 March 2006, 19:37
Location:Москва, школа 179
Contact:

Re: Режим OLIMPIAD

Post by dk » 04 November 2012, 15:03

Fenixoff wrote:Здравствуйте еще раз!
Мои попытки использовать Number of accept tests = 3 и Test scores for test = "0 0 0" к положительному результату не привело - задача, проваливающая все тесты, все равно принимается и участник видит вердикт ОК.
Наверное, не OK, а "Accepted for testing"?

Попробуйте добавить в настройках задачи параметр
min_tests_to_accept = 3

Fenixoff
Posts:16
Joined:04 November 2012, 01:43

Re: Режим OLIMPIAD

Post by Fenixoff » 04 November 2012, 15:07

Пробовал. Кроме этой опции указывал что-то еще, как результат, задача, проходящая только пробные тесты помечается как "Неполное решение".

dk
Posts:129
Joined:25 March 2006, 19:37
Location:Москва, школа 179
Contact:

Re: Режим OLYMPIAD

Post by dk » 04 November 2012, 15:21

Пересоберите ejudge из svn, там несколько дней назад правились баги, связанные с режимом olympiad.

dk
Posts:129
Joined:25 March 2006, 19:37
Location:Москва, школа 179
Contact:

Re: Режим OLYMPIAD

Post by dk » 04 November 2012, 15:24

Кстати, на IOI уже другие правила - там онлайн-тестирование с фидбеком.

Fenixoff
Posts:16
Joined:04 November 2012, 01:43

Re: Режим OLYMPIAD

Post by Fenixoff » 04 November 2012, 15:36

Спасибо, попробуем пересобрать.
Но все же, какие опции должны быть установлены для реализации того поведения, что я описал? Думаю, иметь такую информацию на форуме будет полезно многим.

cher
Posts:1153
Joined:13 March 2004, 17:00
Contact:

Re: Режим OLYMPIAD

Post by cher » 04 November 2012, 15:49

Приведите, пожалуйста, конфигурационный файл, который вы использовали.

Fenixoff
Posts:16
Joined:04 November 2012, 01:43

Re: Режим OLYMPIAD

Post by Fenixoff » 04 November 2012, 17:32

Версия из SVN отказывается компилироваться:

Code: Select all

Makefile:518: deps.make: Нет такого файла или каталога
make: *** Нет правила для сборки цели `prjutils/cdeps.c', требуемой для `prjutils/cdeps.o'.  Останов.

cher
Posts:1153
Joined:13 March 2004, 17:00
Contact:

Re: Режим OLYMPIAD

Post by cher » 04 November 2012, 18:42

Это вообще что-то странное. Выложите, пожалуйста, весь вывод svn при извлечении проекта.

Fenixoff
Posts:16
Joined:04 November 2012, 01:43

Re: Режим OLYMPIAD

Post by Fenixoff » 04 November 2012, 19:00

После еще одной одного чекаута из SVN были получены недостающие файлы, система собралась.
Прошу прощения, но что-нибудь можете сказать на счет проблемы с Win32-компиляцией из соседнего топика? Можно ли надеяться на наличие быстрого способа решить эту проблему?

Fenixoff
Posts:16
Joined:04 November 2012, 01:43

Re: Режим OLYMPIAD

Post by Fenixoff » 04 November 2012, 19:39

Спасибо всем за помощь! Нужное поведение было достигнуто в версии из SVN добавлением опции Tests open for participants = 2. В итоге весь конфигурационный файл выглядит так:

Code: Select all

contest_id = 3

contest_time = 240
score_system = olympiad
standings_locale = "Russian"

compile_dir = "../../compile/var/compile"

team_enable_ce_view
ignore_compile_errors
disable_user_standings
problem_navigation

rounding_mode = floor
cr_serialization_key = 22723
enable_runlog_merge
advanced_layout
enable_l10n
team_download_time = 0
cpu_bogomips = 3630

[language]
id = 1
short_name = "fpc"
long_name = "Free Pascal 2.4.0-2"
src_sfx = ".pas"

[language]
id = 28
short_name = "gcc-vg"
long_name = "GNU C (valgrind) 4.4.5"
arch = "valgrind"
src_sfx = ".c"

[language]
id = 29
short_name = "g++-vg"
long_name = "GNU C++ (valgrind) 4.4.5"
arch = "valgrind"
src_sfx = ".cpp"

[problem]
abstract
short_name = "Default"
use_stdin
use_stdout
test_dir = "%Ps"
test_sfx = ".dat"
use_corr
corr_dir = "%Ps"
corr_sfx = ".ans"
info_dir = "%Ps"
tgz_dir = "%Ps"
time_limit = 1
real_time_limit = 5
max_vm_size = 64M
check_cmd = "check"

[problem]
id = 1
super = "Default"
short_name = "C"
long_name = "Качество строки"
type = "standard"
manual_checking = 0
use_stdin = 0
input_file = "input.txt"
combined_stdin = 0
use_stdout = 0
output_file = "output.txt"
combined_stdout = 0
xml_file = "statement.xml"
test_sfx = ".in"
use_corr
corr_sfx = ".out"
time_limit = 1
full_score = 100
test_score = 3
test_score_list = "0 0 [35] 4"
open_tests = "2"
tests_to_accept = 2
min_tests_to_accept = 2
standard_checker = "cmp_bytes"

[tester]
name = Generic
arch = ""
abstract
no_core_dump
enable_memory_limit_error
kill_signal = KILL
memory_limit_type = "default"
secure_exec_type = "static"
clear_env
start_env = "PATH=/usr/local/bin:/usr/bin:/bin"
start_env = "HOME"

[tester]
name = Valgrind
arch = "valgrind"
abstract
no_core_dump
kill_signal = TERM
memory_limit_type = "valgrind"
secure_exec_type = "valgrind"
start_cmd = "runvg"
clear_env
start_env = "PATH=/usr/local/bin:/usr/bin:/bin"
start_env = "LANG=C"
start_env = "HOME"

[tester]
any
super = Generic

[tester]
any
super = Valgrind
arch = valgrind

cher
Posts:1153
Joined:13 March 2004, 17:00
Contact:

Re: Режим OLYMPIAD

Post by cher » 04 November 2012, 22:02

Вообще, с min_tests_to_accept должно работать как нужно.

В любом случае, попробуйте обновленную версию из SVN.
Для того, чтобы участники могли смотреть протоколы тестирования, установите режим
team_enable_rep_view

Fenixoff
Posts:16
Joined:04 November 2012, 01:43

Re: Режим OLYMPIAD

Post by Fenixoff » 04 November 2012, 22:41

Обновленную когда? Сегодня из SVN тянул и компилировал, как раз с min_tests_to_accept без open_tests = "2" не работало.

Post Reply