Лучшее - детям. Знак качества
Краевое государственное общеобразовательное автономное учреждение
Центр образования "Эврика"
  • :
  • :
Естественнонаучное направление
Социально-педагогическое направление
Профильная школа

Турнир Архимеда по программированию

Турнир Архимеда по программированию

Дата проведения: май 2024 г.

Турнир Архимеда по программированию был задуман как развитие идеи серии математических соревнований в рамках Турнира Архимеда по математике для 5-7 классов, многие годы проводимых в Москве. Целевая аудитория турнира – школьники, изучающие программирование первый год (именно поэтому он проводится в конце учебного года). При этом мы не ограничиваем возраст школьников: наряду с 7-классниками из математических школ в турнире участвуют и 11-классники, только-только познакомившиеся с программированием.

Сайт Турнира Архимеда по программированию — http://archimedes-contest.org/

Для мероприятия была выбрана командная форма, как более увлекательная и обучающая (школьники обучаются в общении друг с другом) форма. С 2006 года турнир проводится в Москве, а в 2010 году он впервые был проведен и в других городах России, Украины, Белоруссии.

Турнир проводится по традиционным для командных олимпиад правилам (ACM): засчитываются только верно решенные задачи, при подведении итого учитывается количество решенных задач, а при равном количестве задач – «штрафное время» (см. ниже).

Задачи Турнира рассчитаны на самый широкий круг участников: они в большинстве своем не требуют знаний математики, выходящих за рамки программы 6-7 класса, а также доступны школьникам, не овладевшим целиком еще даже основами языка программирования (например, школьникам, не владеющим строками или двумерными массивами, будут доступны большинство задач).

Турнир включает в себя открытие (рассказ о правилах командных олимпиад и об особенностях проверки олимпиадных задач), пробный тур (знакомство с техникой и тестирующей системой), основной тур, разбор задач и награждение победителей.

Правила

Турнир Архимеда по программированию — очная командная олимпиада по информатике.

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

Продолжительность основного тура — 3 часа. На олимпиаде команде из трёх человек предоставляется один персональный компьютер и предлагается решить 8-12 задач. При подведении итогов учитываются только полностью решенные задачи. Участники в таблице результатов упорядочиваются по убыванию количества решенных задач, а при равном количестве задач — по возрастанию штрафного времени (см.ниже).

Написанные участниками решения сдаются в автоматизированную тестирующую систему. Программа проверяется сразу (или в течение нескольких минут, если сервер перегружен), на заранее подготовленном жюри, одинаковом для всех участников наборе примеров. Если на каждом из примеров решение выдает правильный ответ, задача получает статус ОК (решена верна). При этом к штрафному времени участника добавляется время в минутах от начала турнира. Если на одном из тестов решение не выдает правильный ответ в требуемом формате за указанное время, или программа выдает ошибку во время работы, тестирование решения прекращается (на остальных тестах решение не тестируется). В этом случае к штрафному времени прибавляется 20, а участнику сообщается номер теста, на котором произошла ошибка, и указывается тип ошибки: Неправильный ответ, Превышено максимальное время работы, Ошибка выполнения, Неправильный формат вывода и т.п. Сами тестовые примеры до окончания олимпиады участникам не показываются.

В тестирующую систему сдается исходный текст программы (файл с расширением .pas, .dpr, .c, .cpp и т.п.). Тестирующая система самостоятельно компилирует исходный текст в исполняемый код, при ошибке на этом этапе участнику сообщается, что произошла Ошибка компиляции, а также показывается протокол компиляции с указанием конкретной ошибки. На штрафное время такие попытки не влияют. Также на штрафное время не влияют попытки по данной задаче, сделанные ПОСЛЕ ее успешной сдачи.

Во время турнира участники могут использовать любые письменные материалы (книги, тетради с записями, …), но не могут пользоваться никакими электронными устройствами (мобильными телефонами, калькуляторами, плеерами, флешками итп), а также не имеют право использовать интернет, кроме страницы сдачи решений в тестирующей системе.

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

Список языков программирования и сред разработки определяется местными организаторами исходя из конфигурации компьютеров в местах проведения и возможностей тестирующей системы. Как правило, в этот список входят языки паскаль (Delphi), C, C++. Также в этот список при необходимости рекомендуется включить языки java, Visual Basic, python, perl, php.

Во всех задачах требуется написать консольное приложение. Входные данные считываются с клавиатуры, а выходные данные выводятся на экран. Программа должна при всех допустимых входных данных работать не более указанного времени (как правило, 1 сек) и использовать память в размере, не большем 64М (включая память на хранение данных и бинарного кода программы).

Примерная программа проведения турнира (может различаться в разных городах проведения)

  • Открытие (регистрация команд, знакомство с правилами олимпиады и особенностями автоматической проверки олимпиадных задач)
  • Пробный тур (знакомство с техникой и тестирующей системой — при необходимости)
  • Основной тур (продолжительность тура — 3 час, на тур будет предложено 8-12 задач)
  • Разбор задач
  • Награждение победителей
  • Показ тестов и результатов тестирования в тестирующей системе
3573