Соревнования

по программированию

Тип соревнований Длительность Кол. задач Правила
Individual Contest 2-3 час 6-12 задач ACM
Team Contest 3-5 час 8-14 задач ACM
NFS (Need for speed) 1 час 10 задач ACM

Правила ACM ICPC

Каждое соревнование проводится по стандартным правилам ACM ICPC.
  • Решение считается принятым, если оно проходит все тесты.
  • Принятое решение получает штрафной балл, равный количеству минут, прошедших от начала турнира, плюс 20 штрафных минут за каждую неуспешную попытку по данной задаче, которые предшествовали первой успешной попытке.
  • Задачи, не признанные решенными к моменту окончания соревнования, никакого вклада в суммарное время не дают (в том числе, и в виде штрафов за забракованные решения).
  • Участники ранжируются в порядке уменьшения числа принятых задач, а при равенстве задач в порядке увеличения штрафного времени.
  • Официальные результаты Соревнования объявляются в тот же день по окончанию соревнования.
  • Полную и окончательную ответственность за проверку правильности представляемых решений несет Жюри. Все решения Жюри окончательны и обжалованию не подлежат.
  • Проверка Решений

    Проверка представленных решений проводится во время соревнований. Участники посылают решения в Жюри с помощью предоставленного программного обеспечения. При посылке решения участник выбирает компилятор, который будет использован Жюри для компиляции решений. Все компиляторы работают под управлением OS Linux. Во время турнира могут быть использованы более новые версии компиляторов при условии сохранения совместимости с версиями, указанными выше.

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

    В условии каждой задачи указывается максимальное время выполнения для одного теста. Если на одном из тестов программа превысила это время, решение считается неверным.

    По мере готовности участник посылает свои решения в Жюри для проверки. После этого участник может продолжать работу над другими задачами. Результаты проверки посланного решения будут доступны участнику немедленно по завершении проверки. Участнику сообщается, зачтено решение или нет. Если решение не зачтено, сообщается тип ошибки и номер теста, на котором произошла ошибка.

    сообщение номер теста сообщается? когда возникает возможная причина
    OK нет решение зачтено Программа работает верно
    Compilation error нет компиляция программы завершилась с ошибкой 1. в программе допущена синтаксическая или семантическая ошибка
    2. неправильно указан язык
    Wrong answer да ответ не верен 1. ошибка в программе
    2. неверный алгоритм
    Presentation error да программа проверки не может проверить
    выходные данные, так как их формат
    не соответствует описанному
    1. Неверный формат вывода
    2. Программа не печатает результат
    3. Лишний вывод
    Time-limit exceeded да программа превысила установленный
    в условии лимит времени
    1. Ошибка в программе
    2. Неэффективное решение
    Memory limit exceeded да программа превысила установленный
    в условии лимит памяти
    1. Ошибка в программе (напр., бесконечная рекурсия)
    2. Неэффективное решение
    Run-time error да Программа завершила работу с ненулевым
    кодом возврата
    1. Ошибка выполнения
    2. Программа на языке C/C++ не завершается оператором return 0
    3. Ненулевой код возврата указан явно
    При возникновении ошибки Compilation error программа не запускается ни на одном тесте. При возникновении ошибок Run-time error, Memory limit exceeded,Time-limit exceeded вывод программы не проверяется.

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