1. Участникам будет предложено 8 задач различной степени сложности. Участники могут делать неограниченное количество попыток сдачи любой задачи, получая штрафное время за каждую неудачную попытку.
2. Длительность соревнования составляет 4 астрономических часа. Жюри может продлить время чемпионата в случае необходимости.
3. В распоряжение участника выделяется 1 ПК. Использование сторонних компьютеров (ноутбуков, мобильных телефонов) строго запрещено.
4. Решением задачи служит программа на одном из допустимых языков программирования (Pascal, C++, Java).
5. Проверка задач происходит в автоматическом режиме специальной тестирующей системой. Для каждой задачи заготовлен набор тестов с различными вариантами входных данных. Решение участника компилируется, а затем выполняется на этом наборе до возникновения первой ошибки, либо до полного прохождения комплекта тестов. Решения всех участников тестируются на одинаковом наборе тестов. При этом для каждой задачи заданы ограничения по времени работы и по количеству используемой памяти на тесте. В случае возникновения ошибки, участнику сообщается ее тип, а также номер теста (кроме ошибки компиляции), на котором она возникла.
6. Задача считается полностью решенной, если она прошла все тесты.
7. В число компиляторов[1], используемых тестирующей системой, входят:
- GNU C++ 4.7.2;
- Free Pascal 2.6.0-9;
- Java JDK 1.7.0_25.
8. Запрещается использование:
- Ассемблерных вставок;
- Работы с файлами, кроме тех, что указаны в условии задачи;
- Использование функций WinAPI;
- Использование модулей Crt, WinCrt в Pascal.
А также любые другие действия, которые могут повредить работе автоматической тестирующей системы. Жюри оставляет за собой право без предупреждения дисквалифицировать любого участника, уличенного в подобных действиях.
9. Все взаимодействие участников с тестирующей системой осуществляется через соединение с сервером тестирующей системы. Работы с любыми другими сайтами и прочими ресурсами сети Интернет запрещены.
10. В распоряжении участника имеются следующие средства разработки:
- Free Pascal ABC;
- Microsoft Visual Studio C++, CodeBlocks, Dev С++;
- NetBeans IDE.
11. По всем техническим вопросам участник имеет право обращаться к членам жюри лично. Ни при каких обстоятельствах участник не может рассчитывать на компенсацию уменьшением штрафного времени или иным способом за возникшие технические неполадки независимо от их причины. Жюри имеет право оставить вопрос без комментариев.
12. По всем вопросам, связанным с условиями задач, рекомендуется обращаться непосредственно к членам жюри.
13. Участнику запрещается пользоваться любыми внешними источниками информации, а также любыми электронными устройствами.
14. Участнику запрещается пользоваться любыми исходными кодами, в том числе в случае размещения их на компьютере участника, если они не входят в стандартный комплект поставки соответствующего ПО. Рекомендуется уточнить необходимую информацию у жюри.
15. На время проведения чемпионата участнику запрещается обмениваться информацией (вербально или невербально) с любыми лицами, за исключением членов жюри. Во время соревнования необходимо соблюдать тишину.
16. Участники ранжируются по количеству решенных задач, при равенстве числа решенных задач — по штрафному времени, при равенстве штрафного времени — по времени сдачи последней решенной задаче.
17. Штрафное время за задачу начисляется как время в минутах до первой успешной попытки плюс двадцать минут за каждую неудачную попытку, сделанную до удачной. Штрафное время участника является суммой штрафного времени решенных задач.
18. Во время соревнований участникам доступен монитор соревнования – текущее положение участников.
19. Перед соревнованием состоится пробный тур длительностью от 15 до 40 минут. Участнику запрещается использовать любые материалы или исходные коды, написанные на пробном туре. Дисквалификация на пробном туре распространяется и на основной тур.
20. Решения жюри окончательны. Жюри принадлежит исключительное право дисквалификации, иных дисциплинарных наказаний, а также трактовки текущих правил. Жюри не обязано комментировать свои решения.
21. Победителями признаются участники, выполнившие наибольшее количество заданий, используя меньше времени.
22. В олимпиаде могут принимать участие студенты ПГУТИ любого курса, любой специальности.
23. Членами жюри являются: Карбаев Д.С., Полукаров Д.Ю., Павлов К.С., Мезенцева Е.М.
Председатель: Тарасов В. Н.
Членами технического комитета являются: Самойлов Н.П., Диязитдинов М.А., Исаков Т.В., Самаркин М.Е.
Возможны следующие результаты проверки:
- Correct
Решение прошло все тесты.
- Compiler-error
Компилятор не смог создать .exe-файл при компиляции посланного решения. Это бывает по нескольким причинам:
- Синтаксическая ошибка в решении. Попробуйте откомпилировать его у себя на компьютере.
- Неверно выбран компилятор. При посылке решения на проверку убедитесь, что выбран правильный компилятор.
- Вместо файла с исходным кодом на проверку послан .exe-файл. На проверку всегда нужно посылать файл с исходным кодом.
- Исходные коды посланного решения состояли из нескольких файлов. Так как на проверку посылается только один файл, то решение нужно писать так, чтобы один посылаемый файл содержал все решение.
- Не был сохранен файл с исходным текстом решения. На проверку была послана старая (скорее всего неправильная) версия.
- Waiting…
Решение было послано на проверку, но тестирующая система еще не приступила к его проверке. В данный момент она тестирует другое решение.
- Wrong Answer on Test N
Ошибка при выполнении программы. N — указан номер теста, на котором это произошло.
- Run error on Test N
Программа завершилась с кодом возврата N, не равным нулю. Это происходит, например, когда Pascal-программа завершается оператором Halt с ненулевым кодом, или C++ -программа завершается оператором return с ненулевым кодом. В колонке Тест указан номер теста, на котором это произошло.
- Memory limit exceeded
Проверяемое решение использовало больше памяти, чем разрешено в данной задаче. В колонке Тест указан номер теста, на котором это произошло.
- Time limit exceeded
Проверяемое решение использовало больше времени, чем разрешено в данной задаче. В колонке Тест указан номер теста, на котором это произошло. Эта ошибка может произойти по нескольким причинам:
- Ошибка в решении, приведшая зависанию программы.
- Неэффективное решение.
[1] Версии компиляторов могут незначительно отличаться от указанных.