Difference between revisions of "Serve.cfg:global:variant map file"
Line 17: | Line 17: | ||
|} | |} | ||
'''Описание.''' Данная конфигурационная переменная устанавливает путь к файлу, в котором находится отображение регистрационных имён участников турнира в номера ва- | '''Описание.''' Данная конфигурационная переменная устанавливает путь к файлу, в котором находится отображение регистрационных имён участников турнира в номера ва- | ||
− | риантов для всех вариантных задач данного турнира (см. конфигурационную переменную <tt>[[serve.cfg: | + | риантов для всех вариантных задач данного турнира (см. конфигурационную переменную <tt>[[serve.cfg:problem:variant_num|variant_num]]</tt>). Если в турнире есть хотя бы одна вариантная задача, параметр |
<tt>variant_map_file</tt> должен быть установлен в имя корректного файла. Полный путь | <tt>variant_map_file</tt> должен быть установлен в имя корректного файла. Полный путь | ||
к файлу вариантов формируется по следующим правилам: если значение переменной | к файлу вариантов формируется по следующим правилам: если значение переменной | ||
Line 41: | Line 41: | ||
же порядке, в котором заданы вариантные задачи. Количество номеров вариантов в строке | же порядке, в котором заданы вариантные задачи. Количество номеров вариантов в строке | ||
отображения вариантов должно совпадать с количеством вариантных задач турнира. Вариант | отображения вариантов должно совпадать с количеством вариантных задач турнира. Вариант | ||
− | задачи — это целое число от 1 и до значения конфигурационной переменной <tt>[[serve.cfg: | + | задачи — это целое число от 1 и до значения конфигурационной переменной <tt>[[serve.cfg:problem:variant_num|variant_num]]</tt> |
соответствующей задачи включительно. | соответствующей задачи включительно. | ||
Latest revision as of 06:08, 24 November 2014
Навигация: Главная страница/Система ejudge/Использование/Конфигурационные файлы/serve.cfg/Глобальные конфигурационные параметры/variant_map_file
Имя переменной: | variant_map_file | |
Содержится в: | global | |
Используется: | serve | |
Тип содержимого: | путь к файлу | |
Может отсутствовать: | да | |
Значение по умолчанию: | не установлено | |
Может повторяться: | нет |
Описание. Данная конфигурационная переменная устанавливает путь к файлу, в котором находится отображение регистрационных имён участников турнира в номера ва- риантов для всех вариантных задач данного турнира (см. конфигурационную переменную variant_num). Если в турнире есть хотя бы одна вариантная задача, параметр variant_map_file должен быть установлен в имя корректного файла. Полный путь к файлу вариантов формируется по следующим правилам: если значение переменной variant_map_file начинается с символа ’/’, то есть является абсолютным путём, используется значение этой переменной. В противном случае полный путь к файлу вариантов получается конкатенацией значения конфигурационной переменной conf_dir и значения переменной variant_map_file. Текущая версия системы ejudge поддерживает следующий формат файла отображения вариантов. Файл имеет следующую структуру.
<variant_map version="1"> VARIANT_MAP_LINE* </variant_map>
Здесь первая и последние строки должны присутствовать точно в указанном виде, VARIANT_MAP_LINE — строка отображения вариантов для одного пользователя. Комментарии в файле начинаются с символа # и оканчиваются концом строки. Пустые строки в файле игнорируются. Файл вариантов может содержать произвольное количество строк отображения вариантов, однако участник, не упомянутый в файле отображения вариантов, теряет возможность сдавать вариантные задачи. Попытка сдачи им вариантной задачи завершится ошибкой недопустимой задачи. Каждый участник может быть упомянут в файле вариантов не более одного раза.
Строка отображения вариантов одного пользователя имеет следующий вид:
LOGIN VARIANT*
Здесь LOGIN — это регистрационное имя пользователя, VARIANT — номер варианта. Номера вариантов должны быть перечислены для всех вариантных задач турнира и в том же порядке, в котором заданы вариантные задачи. Количество номеров вариантов в строке отображения вариантов должно совпадать с количеством вариантных задач турнира. Вариант задачи — это целое число от 1 и до значения конфигурационной переменной variant_num соответствующей задачи включительно.
Пример.
variant_map_file = "variant.map"
Если в турнире определены три вариантные задачи, каждая из которых имеет по 4 варианта, то следующий пример задаёт отображение вариантов для пользователей user1, user2, user3.
<variant_map version="1"> # Задачи: A, B, C user1 1 3 2 user2 3 4 1 user3 4 2 4 </variant_map>