Вузовско-академическая олимпиада по информатике 2019
Версия для печати

Правила олимпиады

Проведение олимпиады

Каждый участник получает в свое распоряжение один IBM PC совместимый компьютер конфигурации не хуже Intel Pentium D с 1024 МБ ОЗУ, работающий под управлением операционной системы Windows. В случае непредвиденных обстоятельств, таких как неисправность локальной сети или отсутствие электропитания в компьютерном классе, участникам могут быть предоставлены компьютеры более слабой конфигурации. Олимпиада состоит из пробного тура и основного тура.

Пробный тур длится не более двух часов. В ходе него участники могут ознакомиться с рабочими местами и программным обеспечением олимпиады, решив несколько простых задач. Во время пробного тура на рабочем месте участника может присутствовать учитель или тренер. Результаты пробного тура не учитываются при подведении итогов олимпиады.

Основной тур длится 5 часов для старшей лиги и 3 часа для младшей. Жюри имеет право продлить тур в случае непредвиденных обстоятельств. Во время основного тура участникам предлагается для решения от 6 до 10 задач на русском языке. Жюри принимает решения на языках программирования C++, С#, Pascal, Java и Python. Отправка решений осуществляется во время тура с помощью программного обеспечения олимпиады. Через некоторое время после отправки участнику становится доступен результат проверки. После окончания тура решения не принимаются.

Участники могут приносить с собой и использовать бумажную литературу (справочники, словари, листинги алгоритмов). Запрещается использование любых вычислительных устройств и средств хранения или передачи информации: портативных компьютеров, калькуляторов, электронных словарей, съёмных носителей, мобильных телефонов, любых наушников и других коммуникационных устройств. Разрешается использование любого программного обеспечения, установленного на предоставленном компьютере.

Во время основного тура участники могут общаться только с членами технического комитета. Участник не должен создавать излишнего шума, чтобы не мешать другим участникам. Участник может обратиться к жюри с вопросом по условию какой-либо задачи. Вопрос должен быть сформулирован на русском языке и предполагать ответ «Да» или «Нет». Вопрос задаётся с помощью программного обеспечения олимпиады. Жюри может ответить на поставленный вопрос «Да», «Нет», «Смотри условие задачи» или «Без комментариев». Жюри может разослать ответ на поставленный участником вопрос всем участникам олимпиады.

Участники могут быть дисквалифицированы за несоблюдение данных правил, а также за совершение действий, которые могут нарушить работу программного обеспечения олимпиады. За нарушение правил во время пробного тура участник может быть не допущен до участия в основном туре.

Проверка решений

Решением задачи является файл с исходным текстом программы, написанной на одном из разрешённых языков программирования. Разные задачи можно решать на различных языках программирования. Допустимый размер исходного текста одной программы с решением ограничен.

Входные данные подаются программе в стандартном потоке ввода. Программа должна выводить ответ в стандартный поток вывода.

В решениях задач запрещается:

  • работа с любыми файлами;
  • выполнение внешних программ и создание новых процессов;
  • работа с GUI-элементами (окнами, диалогами и т.д.);
  • работа с внешними устройствами (принтером, звуковой картой и т.д.);
  • использование сетевых средств.

При проверке решений используются те же компиляторы, что имеются у участников. Однако набор функций, доступных программам во время проверки, ограничен. В ходе пробного тура участники должны убедиться в доступности необходимых им функций. До начала основного тура участник может обратиться к жюри с просьбой о расширении набора доступных функций.

Решение проверяется путём последовательного запуска на наборе тестов, который недоступен участникам и является одинаковым для всех. Тестирование производится автоматически, поэтому программы должны в точности соблюдать форматы входных и выходных данных, описанные в условии каждой задачи. Все входные данные предполагаются корректными и удовлетворяющими всем ограничениям, указанным в условии задачи. Набор тестов не предоставляется участникам даже после окончания олимпиады.

Для каждой задачи определены максимальное время выполнения, объём доступной памяти и максимальный размер выходных данных для одного теста. Программа участника проходит данный тест, если выдаёт для него верный ответ и укладывается в ограничения по времени, по памяти и по размеру выходных данных.

После отправки очередной задачи на проверку участник получает ответ с результатами её тестирования. Участник может посылать задачу на проверку такое количество раз, какое считает нужным (если только многократные посылки задачи на проверку не нарушают стабильной работы проверяющей системы — см. выше).

Определение победителя

Участники ранжируются по числу набранных баллов. Чем больше баллов набрал участник, тем выше его место. Для устранения неоднозначности при выявлении победителя учитывается время последней успешной (увеличившей количество баллов) попытки — выше ставится участник, сделавший свою последнюю успешную попытку раньше.

Баллы, набранные участником, считаются как сумма баллов по каждой из задач тура. Максимальный балл за каждую задачу — 100. В каждой задаче все тесты разделены на группы, у каждой из которых есть своя стоимость в баллах (сумма по всем группам — 100). Группа тестов считается пройденной, если решение участника прошло все тесты из данной группы, а также пройдены все зависимые группы тестов.

Баллы, полученные участником за попытку, вычисляются как сумма стоимостей всех пройденных групп тестов.

Количество баллов, полученных участником за задачу, вычисляется как максимальное количество баллов, полученных участником за все попытки сдачи задачи.

Во время тура участники могут смотреть таблицу с текущими результатами. За час до конца тура таблица замораживается. Все промежуточные результаты являются неофициальными. Официальные результаты объявляются на закрытии олимпиады.

Жюри имеет право дисквалифицировать участников олимпиады в следующих случаях:

  • Использование участником олимпиады нескольких логинов, использование чужого логина.
  • Попытки нарушения работы тестирующей системы.
  • Любые хулиганские действия.
  • Публикация решений задач в интернете.
  • Сдача чужого решения, даже если чужое решение было изменено или доработано.
  • Передача своего решения другим участникам, в том числе и непреднамеренная.

Решение о «похожести» решений принимается жюри. Жюри не принимает во внимание конкретный способ передачи информации между разными участниками. И имеет право дисквалифицировать участника просто в случае одинакового решения у двух участников.