С 29 ноября по 1 декабря в Санкт-Петербурге, Алма-Ате, Тбилиси и Барнауле прошёл турнир по программированию для студентов NERC 2019 — Северный евроазиатский региональный контест, имеющий статус полуфинала чемпионата мира.
В турнире приняла участие 301 команда. Около 140 из них состязались в городе на Неве на базе Национального исследовательского университета ИТМО. В их числе были и три команды ИжГТУ имени М.Т. Калашникова, которые были представлены студентами 1-го и 4-го курса бакалавриата и 1-го курса магистратуры института «Информатика и вычислительная техника», прошедшими школу Центра подготовки программистов олимпийского резерва, возглавляемого профессором кафедры «Программное обеспечение» В.Г. Тарасовым. По правилам соревнований в каждой команде было по 3 участника. Для участия в полуфинале команды прошли региональные отборочные туры, которые состоялись в 16 городах. Наши команды прошли отбор в конце октября в городе Екатеринбурге.
Турнир проводился в историческом парке «Россия — Моя история», представляющем собой масштабный экспозиционный комплекс. География его площадок простирается через всю Россию и насчитывает 21 город. В Санкт-Петербурге это большой музейно-выставочный комплекс, располагающийся недалеко от Парка Победы. Большинство участников было размещено недалеко — в гостинице «Россия».
В первый день состоялась регистрация участников и церемония торжественного открытия. Во второй день прошли турнир школьников и пробный тур для студентов.
А в третий день состоялся основной студенческий турнир. Итак, в первый день зимы, солнечным утром у входа в здание исторического комплекса выстроилась длинная очередь из участников турнира. В холле их ожидали столы с ноутбуками, где каждой команде было выделено свое место. Зона турнира была огорожена лентой, вход за которую посторонним был запрещён. Все участники должны были на время соревнования расстаться с любыми имеющимися у них электронными устройствами. Об этом неоднократно и громогласно было объявлено на 2 официальных языках турнира — русском и английском. Один из тренеров команды из Прибалтики оказался в итоге весь увешан рюкзаками своих студентов.
И вот дан старт! Каждой команде предназначался персональный конверт с условиями задач на английском языке. Работа закипела. Со стороны это выглядело весьма впечатляюще: с верхних этажей открывался отличный обзор на зал. Все желающие могли видеть ход турнира на огромном экране, установленном в конференц-зале. Там же проходили выступления представителей партнёров турнира — компаний Huawei, Яндекс, Сбербанка. Представители Московского физико-технического института рассказали о турнире, об образовательном проекте Moscow Workshops. Постоянно в интернете велась прямая трансляция с комментарием. Также любой желающий мог решить задачи турнира (они были выложены в открытом доступе) и послать своё решение.
На решение задач отводилось 5 часов. Для этого на выбор предлагались несколько языков программирования: Java; C++; Python; Kotlin. За каждую решённую задачу участникам на стол прикреплялся воздушный шарик — своего цвета за каждую. Наиболее простые задачи были решены довольно быстро и зал постепенно становился всё более нарядным. Солнце, что пробивалось через окна, подсвечивало шарики, создавая праздничный настрой. Однако тут зима вспомнила, что настала её пора: пошёл снег, украшая Санкт-Петербург белым покровом.
В последний час и турнирная таблица была «заморожена». Это делается для создания интриги, чтобы участники не видели, как решают задачи их конкуренты.
После обеда началось подведение итогов и награждение участников турнира. Турнирная таблица открывалась, начиная с нижних позиций. При этом команды могли резко подскочить на более высокие позиции, т.к. именно только в этот момент учитывались решения последнего часа. За счёт этого и одна из наших команд поднялась вверх на много позиций. А борьба была нешуточной: например, команда из Еревана предприняла для решения одной из задач 66 неудачных попыток.
Все 12 задач решить не удалось ни одной из команд. 10 задач решили 2 команды. 9 задач решили 6 команд. 8 задач решили 11 команд. 7 задач решили 12 команд. 6 задач решили 23 команды. 27 команд вовсе не решили ни одной задачи.
Команды, занявшие места с первого по четвертое, были удостоены золотых медалей. Серебряные медали получили команды, расположившиеся на местах с пятого по восьмое. Команды на местах с девятого по тринадцатое получили бронзовые медали. Диплома первой степени были удостоены команды, расположившиеся на местах с 14 по 19. Диплом второй степени получили команды на местах с 20 по 54. Наконец, диплом третьей степени достался командам, занявшим места с 55 по 102.
Интрига в распределении мест сохранялась до последних минут. По итогам последнего часа на второе место с 10 решёнными задачами вырвалась команда «Almost Retired» из Нижегородского государственного университета. Победителем турнира также с 10 решёнными задачами, но потратив на это меньше времени, стала команда «25» из Санкт-Петербургского государственного университета.
Наши команды выступили с такими результатами: команда «Calculated team» (Р. Горшков, А. Конычев, В. Зубарев) решила 2 задачи и заняла 197 место, команда «Lebedev studio» (Р. Косухин, Д. Кычанов, М. Лебедев) решила 4 задачи и заняла 126 место, команда «Ne nado dumat’» (Р. Мусин, А. Егоров, И. Зылев) решила 6 задач и заняла 35 место, получив при этом диплом 2 степени.
Финал чемпионата мира пройдёт с 21 по 25 июня 2020 года в московском Манеже. В нём примут участие лучшие команды из всех полуфиналов. По правилам в финал может выйти только одна команда от каждого вуза. Это даёт больше шансов периферийным вузам на участие в нём.
Нашей команде «Ne nado dumat’» не хватило для выхода в финал совсем чуть-чуть, и это, конечно, расстроило наших ребят. Но сейчас они находятся в ближайшем резерве и не теряют надежды попасть в финал.
Конечно, участники турнира не только «сражались», но и успели познакомиться с достопримечательностями Санкт-Петербурга, побывали на Невском проспекте и в других местах.
Подготовил доцент кафедры «Программное обеспечение»
Русских Анатолий Геннадьевич