Всеросси́йская олимпиа́да шко́льников по информа́тике (также Всеросси́йская олимпиа́да шко́льников по информа́тике и ИКТ) — ежегодное соревнование по информатике для школьников 7—11 классов. Основой олимпиады является программирование.
Олимпиада является частью системы Всероссийских олимпиад школьников[1] и проводится с 1989 года. Ежегодно в заключительном этапе олимпиады принимает участие более 200 школьников из различных регионов России.
Первая Всероссийская олимпиада школьников по информатике прошла в 1989 году, однако ещё до неё в СССР проходила Всесоюзная олимпиада школьников по информатике. Первая Всесоюзная олимпиада проходила с 13 по 20 апреля1988 года в Свердловске. В этой олимпиаде приняло участие 80 школьников, причём квоты на количество участников из каждой из республик СССР устанавливались пропорционально численности школьников в республике. В то время отсутствовал опыт организации соревнований такого уровня как в СССР, так и в других странах, поэтому организаторам пришлось самостоятельно продумывать формат и содержание олимпиады[2][3]. С тех пор Всесоюзная олимпиада проходила ещё три раза вплоть до распада СССР — в 1989, 1990 и 1991 годах в Минске, Харькове и Бишкеке соответственно[4]. Сама Всероссийская олимпиада с 1989 по 1991 год носила статус республиканского этапа Всесоюзной олимпиады[3].
После распада СССР в 1992 году параллельно с Всероссийской олимпиадой прошла Межгосударственная олимпиада, куда были приглашены школьники из государств, входивших в состав СССР[5], однако свои команды не прислали Азербайджан, Таджикистан и Эстония[6].
Изначально первый тур олимпиады был теоретическим, а второй предполагал использование компьютеров. Однако начиная с III Всесоюзной олимпиады 1990 года (или с IV Всероссийской) оба тура стали практическими[3].
При организации олимпиад столкнулись с проблемами тестирования решений, среди них была потребность в большом количестве специалистов, поскольку тесты запускались вручную в присутствии участника. Производилась частичная автоматизация тестирования с использованием сетевых технологий, а начиная с 1999 года процедура тестирования стала полностью автоматической[7].
С 1992 года статус столицы Всероссийской олимпиады по информатике на 5 лет получил подмосковный город Троицк в связи с наличием там хорошего компьютерного оснащения. Далее статус столицы олимпиады получил на 3 года Санкт-Петербург[3], а начиная с 2001 года, в связи с развитием экономики страны и информатизацией образования, олимпиада стала проводиться в различных городах России.
Первый тур был теоретическим, на нём требовалось решить 4 задачи и записать решения на каком-либо алгоритмическом языке, а второй практический, на нём предлагалось для решения 2 задачи, а официальным языком тура был объявлен Бейсик. Решения участников оценивались из 175 баллов[8].
Совместно с Всероссийской олимпиадой, также проводилась Межгосударственная олимпиада в Могилёве, собравшая школьников из 12 республик бывшего СССР[5]. Впервые оба тура Всероссийской олимпиады были практическими. На олимпиаде участникам было предложено две задачи, решение каждой из которой оценивалось из 100 баллов[11].
Состав участников олимпиады впервые формировался на основе квот, установленных Министерством образования России. На олимпиаде предлагалось для решения 3 задачи, максимальное число баллов составляло 200[12].
Время проведения каждого тура было установлено в 5 астрономических часов, что соответствует нормам международных олимпиад[15]. На олимпиаде впервые была предпринята попытка частично автоматизировать проверку решений участников[16].
Олимпиада проводилась на базе Аничкова дворца. На турах разрешалось пользоваться любой литературой и личными записями, однако было запрещено использовать электронные устройства. Максимальное количество баллов за оба тура составляло 200[17].
При составлении задач жюри учитывало факт того, что 1999 год является годом 200-летия со дня рождения А. С. Пушкина. Помимо школьников из субъектов РФ в олимпиаде приняли участие школьники из Байконура. Впервые на Всероссийской олимпиаде процесс тестирования решений был полностью автоматизирован[7].
Впервые на олимпиадах такого уровня абсолютными победителями стали сразу два участника: Пётр Митричев и Алексей Круглов, набравшие по 173 балла из 200[19].
Результаты тестирования решений в реальном времени с помощью проектора выводились на экран в актовом зале, где находились участники олимпиады. Победитель олимпиады показал наилучший возможный результат — 200 баллов из 200, что ранее на Всероссийской олимпиаде по информатике никто не показывал[20].
Как и ранее, для проверки решений на олимпиаде использовалась автоматизированная система, однако на этой олимпиаде она была значительно усовершенствована для повышения эффективности и надёжности[21].
Впервые на олимпиаде был проведён пробный тур. На нём участникам предлагалась одна простая задача, направленная на изучение поведения и возможностей технического обеспечения олимпиады[22].
Автоматизированная тестирующая система впервые позволяла не только отправлять решения на проверку, но также давала участникам возможность самостоятельно проверить свои решения на тестах, что позволяло избежать различных ошибок в решениях[23]
На олимпиаде участникам было впервые предложено 8 задач, была добавлена система обратной связи — по каждой задаче участники определенное жюри количество раз могли узнать результат тестирования на конечном наборе тестов, ранее эти результаты были доступны только после окончания тура.
Заключительный этап XXI Всероссийской олимпиады школьников
Согласно положению о Всероссийской олимпиаде школьников[39], выделяется четыре этапа олимпиады:
Школьный этап олимпиады проводится общеобразовательными учреждениями в октябре—ноябре каждого года. Задания для школьного этапа составляются предметно-методическими комиссиями муниципального этапа с учётом рекомендаций Центральной предметно-методической комиссии. В школьном этапе олимпиады может принять участие любой обучающийся 5—11 классов общеобразовательной школы[39], однако на практике олимпиада охватывает не все школы, основной причиной чего, по мнению председателя Центральной предметно-методической комиссии по информатике В. М. Кирюхина[40], является отсутствие методической поддержки учителей[41].
Муниципальный этап олимпиады проводится органами местного самоуправления в ноябре—декабре каждого года. Задания для муниципального этапа составляются предметно-методическими комиссиями регионального этапа с учётом рекомендаций Центральной предметно-методической комиссии. Участниками этапа являются учащиеся 7—11 классов, являющиеся победителями и призёрами школьного этапа олимпиады, либо победителями и призёрами муниципального этапа предыдущего года[39].
Региональный этап олимпиады проводится в субъектах Российской Федерации в январе—феврале каждого года. Организаторами этапа являются органы исполнительной власти субъектов Российской Федерации, осуществляющих управление в сфере образования. Задания для регионального этапа составляются Центральной предметно-методической комиссией. Участниками этапа являются учащиеся 9—11 классов, являющиеся победителями и призёрами муниципального этапа олимпиады, либо победителями и призёрами регионального этапа прошлого года[39]. Этап проводится в два основных тура, к которым может добавляться третий пробный тур. Этап проводится практически одновременно во всех субъектах России, чтобы исключить возможность утечки олимпиадных заданий. После этапов проводится процедура разбора заданий[42].
Заключительный этап Всероссийской олимпиады школьников по информатике ежегодно проводится Министерством образования и науки Российской Федерации в одном из городов России. Задания для заключительного этапа, как и для регионального этапа, составляются Центральной методической комиссией[39]. Этап состоит из трёх туров, один из которых является пробным. На пробном туре участники решают несколько задач, направленных на изучение возможностей и тестирование программного обеспечения на их компьютерах и работы автоматической тестирующей системы[43]. На каждом из основных туров участникам предлагается несколько задач, число которых определяется жюри олимпиады, но не может быть менее трёх[43]. До 2010 года участникам предлагалось три задачи, с 2011 года — четыре задачи на каждом туре. Участники, получившие дипломы победителей и призёров на этом этапе, получают право поступления без экзаменов в любой вуз страны для обучения по профильным специальностям[39], а также получают денежные премии[44][45].
Задачи
На олимпиаде выделяется два основных типа задач[46][47][48]:
Задачи, решением которых является программа. При решении такой задачи участник должен составить программу, которая по заданному входному файлу сформирует выходной, и сдать исходный текст программы в проверяющую систему. Программа участника будет скомпилирована, а корректность её работы будет проверена на различных входных данных, заранее неизвестных участнику. На работу скомпилированных программ налагаются ограничения по объёму используемой оперативной памяти, времени выполнения, а также запрещается доступ к посторонним файлам, системным и сетевым ресурсам[46]. При этом выделяется несколько подтипов:
стандартная, то есть корректность программы проверяется при помощи запуска на неизменном наборе текстовых входных данных, а результат должен выводиться в стандартный поток вывода.
интерактивная, то есть программа участника взаимодействует с программой-интерактором[49], разработанной жюри.
С открытыми тестами: задачи, решением которых является выходной файл. В данном типе задач все входные данные уже известны участнику, ему необходимо лишь получить для каждого входного файла соответствующий ему выходной и сдать его в проверяющую систему. При этом способ, которым участник получил ответ, не важен.
Современные задачи олимпиады являются многоуровневыми, то есть даже неполные и неэффективные решения пройдут определённые группы тестов и принесут участникам некоторое количество баллов. При этом научный комитет олимпиады рассматривает многочисленные варианты решения каждой задачи и составляет наборы тестов таким образом, чтобы лишь полные решения смогли пройти все тесты и набрать максимальный балл[50].
Организационно-методическое обеспечение олимпиады на постоянной основе обеспечивают два органа: Центральный оргкомитет Всероссийской олимпиады школьников и центральная предметно-методическая комиссия по информатике. Центральный оргкомитет обеспечивает контроль за всеми соревнованиями, входящими в систему Всероссийских олимпиад, в то время как центральная предметно-методическая комиссия формируется отдельно по каждому из предметов. В то же время, на каждом из этапов олимпиады также формируются оргкомитет олимпиады и жюри. Кроме того, специфичным для олимпиад по информатике[51] является выделение ещё двух органов — научного и технического комитетов.
Центральная предметно-методическая комиссия
Центральная предметно-методическая комиссия олимпиады разрабатывает тексты олимпиадных заданий и требования к проведению заключительного и регионального этапов, а также методические рекомендации по составлению требований к проведению и заданий для школьного и муниципального этапов[39]. Членами центральной предметно-методической комиссии по информатике являются[52]:
Андреева Елена Владимировна — заведующая кафедрой информатики СУНЦ МГУ, кандидат физико-математических наук, доцент.
Ахмедов Максим Басирович — руководитель группы разработки общества с ограниченной ответственностью «Яндекс.Облако».
Грибов Филипп Юрьевич — преподаватель кафедры Алгоритмов и структур данных Автономной некоммерческой организации дополнительного образования «Тинькофф Образование».
Корнеев Георгий Александрович — доцент кафедры компьютерных технологий Санкт-Петербургского государственного университета информационных технологий, механики и оптики, кандидат технических наук.
Маврин Павел Юрьевич — ассистент факультета информационных технологий и программирования Санкт-Петербургского государственного университета информационных технологий, механики и оптики.
Пядеркин Михаил Михайлович — преподаватель кафедры дискретной математики федерального государственного автономного образовательного учреждения высшего образования «Московский физико-технический институт (национальный исследовательский университет)», кандидат физико-математических наук (PhD).
Тихомиров Михаил Игоревич — преподаватель кафедры дискретной математики федерального государственного автономного образовательного учреждения высшего образования «Московский физико-технический институт (национальный исследовательский университет)», кандидат физико-математических наук (PhD).
Шедов Сергей Валерьевич — старший преподаватель кафедры алгоритмов и технологий программирования федерального государственного автономного образовательного учреждения высшего образования «Московский физико-технический институт (национальный исследовательский университет)», кандидат физико-математических наук (PhD).
Шуйкова Инесса Анатольевна — ректор государственного автономного учреждения дополнительного профессионального образования Липецкой области «Институт развития образования», кандидат технических наук.
Научный и технический комитеты
Специфика олимпиад по информатике привела к необходимости создания дополнительных рабочих органов. Научный комитет заключительного этапа олимпиады формируется из талантливых студентов и выпускников вузов, являющихся призёрами и победителями олимпиад по информатике высокого уровня. Научный комитет подготавливает пакет задач, из которого впоследствии жюри выбирает несколько задач, которые будут предложены участникам для решения. Кроме того, в задачи научного комитета входит разработка проверяющих программ для задач и проверка решений участников[51]. Технический комитет олимпиады обеспечивает выполнение необходимых задач технического характера, таких как объединение компьютеров в локальную сеть, обеспечение работы тестирующей системы и решение возникающих у участников проблем с аппаратным и программным обеспечением[51].