ACM NorthEastern European Regional Contest, 1996-97 |
Detailed rules
|
Back to HOME PAGE |
                  | Соревнования проходят на IBM PC совместимых компьютерах в следующей конфигурации: процессор Intel 386-586, ОЗУ не менее 4М, операционная система MS-DOS версии 6.2x-7.0. Все компьютеры подключены к сети "Novell Netware". Используются следующие системы программирования:
Эти системы будут полностью установлены на каждом компьютере без поддержки библиотеки Turbo Vision. Примеры и встроенная система помощи также полностью доступны для участников. Категорически запрещается использовать какие-либо другие программы и библиотеки, а также личные дискеты и другие электронные носители информации. По просьбе участников олимпиады к разрешенным системам программирования могут быть добавлены другие компиляторы. Для этого команде необходимо проинформировать оргкомитет не позднее чем за один месяц до олимпиады. Компилятор может быть разрешен к применению только в том случае, если оргкомитет располагает его зарегистрированной копией. Все остальные команды также смогут использовать этот компилятор. |
                  | Командам будет предложено для решения не менее 5 задач. Продолжительность тура составляет от 5 до 6 часов в зависимости от количества и сложности задач. Жюри имеет право продлить соревнования в случае каких-либо непредвиденных обстоятельств. Участники могут приносить с собой и использовать ТОЛЬКО словари (англо-русский и т.п.), чистые листы бумаги и инструменты для письма. Запрещается приносить и использовать книги, справочники, руководства, электронные словари, листинги программ, и т.д.. Также запрещается использовать информацию в электронном виде, личные компьютеры или калькуляторы. Во время соревнований команды решают предложенные задачи. Решением является программа (файл с исходным текстом), составленная на одном из разрешенных языков программирования. Программа не должна включать в себя других файлов или модулей. Команда может решать различные задачи на различных языках программирования. Проверка представленных решений проводится во время соревнований. Участники посылают решения в жюри с помощью предоставленного программного обеспечения. Жюри компилирует полученное решение с помощью пакетных компиляторов TPC.EXE и BCC.EXE, поэтому все опции компиляции, отличные от умалчиваемых значений, должны быть указаны в исходном файле. Программы на C/C++ компилируются под модель памяти "Large", совпадающую с моделью памяти, используемой программами на Паскале. Входные данные для каждой задачи расположены в одном или нескольких входных файлах, имена которых заданы в тексте задачи. Программа должна формировать выходной файл (или несколько файлов) с заданными именами. Все входные и выходные файлы располагаются в текущей директории DOS. Запрещается выводить какую-либо информацию на экран. Программа-решение может создавать временные файлы в текущей директории во время выполнения. Программа проверки удаляет эти файлы после выполнения решения на каждом из тестов. В решениях задач запрещено использовать:
Проверяющие программы используют различные методы контроля за соблюдением данных требований. Команда, нарушившая эти условия, дисквалифицируется. Решение проверяется путем запуска на наборе тестов, который недоступен участникам и является одинаковым для всех команд. Решение засчитывается в том случае, если оно выдает верные ответы на все тесты. Тестирование производится автоматически, поэтому программы должны в точности соблюдать форматы входных и выходных файлов, описаные в условии каждой задачи. Если не оговорено отдельно, все входные данные предполагаются корректными и удовлетворяющими всем ограничениям указанным в условии. Для каждой задачи указывается максимальное время выполнения для одного теста. Если на одном из тестов программа превысила это время, решение считается неверным. По мере готовности команда посылает свои решения в жюри для проверки. После этого команда может продолжать работу над другими задачами. После того, как жюри проверит решение (проверка занимает около 1-2 минут), команда получает сообщение с результатами тестирования. Это сообщение появляется на экране и дублируется на специальном бланке. Команде сообщается, зачтено решение (Accepted) или нет (Rejected). Если решение не зачтено, сообщается тип ошибки и номер теста, на котором ошибка произошла. Возможные типы ошибок:
Все тесты выполняются в одном и том же порядке с возрастанием сложности. Номер ошибочного теста, указываемый в результатах проверки, есть номер первого теста, не прошедшего проверку. Например, если Жюри сообщило, что "Превышен предел времени на тесте номер 9", это означает, что:
В этом случае можно заключить, что алгоритм правильный, но не эффективный. Если Жюри зафиксировало "Нарушение формата вывода на тесте номер 1", команда может предположить, что она решила задачу, но послала ее на проверку вместо другой. Пример "Листа тестирования":
Во время соревнований участники могут задавать вопросы по условиям задач. Вопрос должен быть составлен в форме, предполагающей ответы "ДА" (Yes) или "НЕТ" (No). Команда заполняет "Лист вопроса" и передает его жюри. Когда жюри ответит на вопрос, команда получит этот "Лист" с ответом обратно. Если вопрос поставлен некорректен или ответ прямо следует из условия задачи, жюри отвечает "Без комментариев" (No comments). Жюри имеет право распространить вопрос команды с ответом среди всех участвующих команд. Пример "Листа вопроса":
Во время работы участники могут использовать сетевой принтер. Результаты печати передаются команде сразу после того, как они будут напечатаны. Выигрывает команда, правильно решившая наибольшее число задач. В случае равенства числа решенных задач, выигрывает команда с наименьшим штрафным временем. Штрафное время - это суммарное время решения задач с добавлением 20 минут за каждое неверное решение (учитывается только для решенных задач). Во время соревнований участники и гости могут просматривать предварительные результаты для всех команд. Участники могут просматривать результаты на своих компьютерах, гости - на специальном мониторе, расположенном в зале для гостей. Пример таблицы результатов:
Здесь A,B,...,F - задачи, Solved - число решенных задач, Time - штрафное время, "+" означает, что соответствующая задача принята с первой попытки, "+i", что задача была принята после i неудачных попыток, "-i" - задача не принята, и было сделано i неудачных попыток. По традиции проведения данных соревнований, для повышения интереса к церемонии награждения, жюри прекращает обновление текущих результатов для участников и гостей за один час до конца соревнований. Во время проведения соревнований участники могут общаться ТОЛЬКО с членами своей команды и представителями жюри и оргкомитета олимпиады. За нарушение правил проведения соревнований команда может быть дисквалифицирована. Жюри обладает исключительным правом определения правильности присланных решений, определения победителей и дисквалификации команд. Жюри разбирает вопросы, возникающие в результате непредвиденных событий и обстоятельств. Решения Жюри окончательны и обжалованию не подлежат. Всем участникам будут предоставлены дискеты для резервного копирования файлов. Жюри не несет ответственности за сохранность файлов участников. Набор тестов, на которых жюри проверяет решения, не предоставляется участникам даже после окончания олимпиады. В течение трех дней после соревнований команда может направить в жюри аппелляцию в случае обнаружения неверного штрафного времени, потери посланного в Жюри решения, и т.п. Если Жюри признает правильность поданной аппелляции, оно может принять решение об изменении состава команд, направляемых на финальные соревнования. Призы в этом случае не перераспределяются. Жюри сообщает о своем решении команде в любом случае. |
                  | Компьютеры участников подключены к сети Novell Netware. Перед началом соревнований каждой команде будет предоставлено входное имя и пароль для работы в сети. Каждой команде для хранения своих файлов будет выделен сетевой каталог, невидимый другими участниками. По умолчанию, стандартный путь "PATH" в системе MS DOS будет установлен на следующие каталоги:
Решение отправляется в жюри командой SUBMIT (запускается из командной строки MS DOS). SUBMIT отображает на экране запрос примерно следующего содержания: ---------------------------------------------- ! A - Problem A name ! ! B - Problem B name ! ! C - Problem C name ! ! ... ! ! ! ! Enter the problem identifier: A ! ! Enter the file name: Task_a.pas ! ! ! ! Send "Task_a.pas" to jury (y/n)?: Y ! ---------------------------------------------- На запрос SUBMIT нужно ввести идентификатор задачи и имя файла с исходным текстом решения. Имя файла может быть произвольным. Расширение определяет используемый язык программирования и компилятор. Допустимы 3 расширения:
Когда жюри проверит решение, на Вашем экране появится сообщение с результатом проверки, а еще через некоторое время Вы получите распечатанный бланк с этим результатом. Для просмотра предварительных результатов олимпиады используйте команду MONITOR. |
                  | Пробный тур будет проведен за 1 день до соревнований. Во время пробного тура участники знакомятся с компьютерами и проверяющим программным обеспечением. Для решения на пробном туре будут предложены 1-2 простые задачи. Результаты пробного тура нигде учитываться не будут, однако нарушение правил на пробном туре может повлечь дисквалификацию команды на основной тур соревнований. |