Чемпионат Урала по спортивному программированию 2007
Версия для печати

Правила соревнования

Правила проведения
одиннадцатого командного Чемпионата Урала
по спортивному программированию

  • Каждая команда должна состоять из трёх студентов и/или аспирантов первого года очной формы обучения, выступавших не более одного раза в финале ACM ICPC. Каждый студент/аспирант может быть участником не более чем одной команды.
  • Каждая команда должна быть предварительно зарегистрирована на сайте чемпионата (Внимание! Дата окончания регистрации - 10 апреля 2007 года).

Программное и аппаратное обеспечение соревнования:

  • Для участия в соревновании каждой команде будет предоставлен один компьютер.
  • Используются следующие системы программирования:
    • Microsoft Visual Studio .Net 2003;
    • Borland Delphi v7.0 или v6.0;
    • JDK 1.5/Eclipse 3.2;

    Также будут поддерживаться языки Borland C++ 3.1 и Borland Pascal 7.0, однако Жюри не гарантирует, что все задачи будут иметь решение на этих языках.

    Условия проведения соревнования:

    • Во время проведения соревнования участники могут использовать только чистые листы бумаги, пишущие инструменты и предоставленный компьютер.
    • Участникам запрещается приносить и использовать любые книги, документацию, электронные словари, листинги программ, программное обеспечение на любых видах носителей, вычислительные устройства (ноутбуки, калькуляторы), мобильные телефоны и любые коммуникационные устройства.
    • Во время проведения соревнования участники могут общаться только с членами своей команды, Жюри и членами технического комитета.
    • Соревнование проводится в два дня (два тура). В первый день проводится турнир программ, где програмы участников сражаются между собой в специально разработанной для чемпионата игре. Во второй день проводится основной тур, по которому определяется команда-чемпион Урала (результаты первого тура при этом не учитываются). Основной тур длится пять часов. По решению Жюри тур может быть продлён.
    • На основном туре будет предложено от шести до тринадцати задач на русском языке.
    • Входные данные для каждой задачи расположены во входном файле, имя которого задано в тексте задачи. Программа должна формировать выходной файл с заданным в тексте задачи именем. Входной и выходной файлы должны располагаться в текущем каталоге, поэтому имена открываемых файлов не должны содержать путей к ним.
    • Во время соревнования команды решают предложенные задачи. Решением является программа (файл с исходным текстом), написанная на одном из предложенных языков программирования. Команда может решать разные задачи на разных языках программирования.
    • Решения посылаются на проверку Жюри используя программное обеспечение соревнования.
    • В исходных текстах решений, переданных Жюри для проверки, запрещено:
      • Использовать сетевые средства.
      • Работать с какими-либо файлами, кроме input.txt и output.txt.
      • Атаковать систему безопасности.
      • Запускать другие программы.
      • Изменять разрешения на файлы.
      • Считывать данные с клавиатуры или выдавать их на экран.
    • Команда, не выполнившая эти требования, может быть дисквалифицирована.
    • Во время проведения соревнований участники могут задавать вопросы по условиям задач. Вопрос должен быть составлен в форме, предполагающей ответы "ДА" или "НЕТ". Если вопрос составлен некорректно или ответ следует прямо из условий задач, Жюри отвечает "БЕЗ КОММЕНТАРИЕВ". Если Жюри согласно, что в условии задачи присутствует неясность или ошибка, то всем участникам соревнований даётся соответствующее объявление. Передача вопросов в Жюри и получение ответов производится с помощью специального программного обеспечения.
    • Во время соревнования участники также могут отправлять код своего решения на печать с помощью специального программного обеспечения. Количество листов бумаги на каждую команду ограничено.

    Оценка решений:

    • Каждое решение, отосланное на проверку Жюри, может быть принято или нет.
    • Решение проверяется путем запуска на наборе тестов, который недоступен участникам и является одинаковым для всех команд. Решение засчитывается в том случае, если оно выдает верные ответы на все тесты.
    • Тестирование производится автоматически, поэтому программы должны в точности соблюдать форматы входных и выходных файлов, описанные в условии задачи. Если не оговорено отдельно, все входные данные предполагаются корректными и удовлетворяющими всем ограничениям, указанным в условии.
    • Для каждой задачи будет установлено максимальное время выполнения программы и максимальный объём используемой памяти на каждом тесте. Решение не засчитывается, если программа не укладывается в указанные лимиты времени и памяти.
    • Когда Жюри проверит решение, команда получает сообщение с результатами тестирования. Команде сообщается, зачтено решение или нет. Если решение не зачтено, сообщается тип ошибки и номер теста, на котором произошла ошибка.
тип ошибки номер теста, на котором произошла ошибка когда возникает возможная причина
Compilation error не сообщается в результате компиляции не создан исполняемый файл синтаксическая ошибка в программе, неправильное расширение файла
Time limit exceeded сообщается программа превысила установленный в условии предел времени неэффективное решение, ошибка в программе
Memory limit exceeded сообщается программа превысила установленный в условии предел памяти неэффективное решение, ошибка в программе
Runtime error сообщается программа завершила работу с ненулевым кодом возврата. В этом случае результат работы не проверяется ошибка исполнения (runtime error): программа на языке С не завершается оператором return 0: ненулевой код возврата явно указан в программе
Presentation error сообщается программа проверки не может проверить выходные данные, поскольку их формат не соответствует описанному неверный формат вывода, выходной файл имеет неправильное имя или отсутствует
Wrong answer сообщается ответ неверен неверный алгоритм решения
Accepted не сообщается решение засчитано алгоритм верный
  • Тесты выполняются в порядке возрастанием их сложности (по мнению Жюри). Номер ошибочного теста, указываемый в результатах проверки, есть номер первого теста, не прошедшего проверку. Например, если Жюри сообщило, что "Time limit exceeded on test № 29", это означает, что:
    • тесты с 1 по 28 прошли проверку;
    • на более сложном, чем предыдущие двадцать восемь, двадцать девятом тесте программа превысила предел времени.
    В этом случае можно заключить, что алгоритм правильный, но неэффективный.
  • Жюри может прекратить проверку решений за 5 минут до конца тура. Все решения, посланные на проверку после этого момента, будут протестированы Жюри после окончания соревнования.
  • Набор тестов, на которых Жюри проверяет решения, не предоставляется участникам даже после окончания соревнований.
  • Подведение итогов:

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

    Пробный тур:

    • На пробном туре команды могут ознакомиться с программным обеспечением соревнования решив несколько специально предложенных простых задач (1-3 задачи).
    • Результаты пробного тура не учитываются при подведении итогов соревнования.
    • Жюри может дисквалифицировать с соревнования команды, нарушившие правила соревнований на пробном туре.