Заместитель министра связи и массовых коммуникаций Марк Шмулевич и губернатор Санкт-Петербурга Георгий Полтавченко открыли вчера, 1 июля, финал чемпионата мира по командному программированию среди студентов, который впервые проходит в России. Чемпионат принимает Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики (НИУ ИТМО), который является четырехкратным победителем соревнований.
Чемпионат мира по командному программированию среди студентов (ACM International Collegiate Programming Contest, ACM ICPC) является одной из самых крупных международных олимпиад по программированию. Соревнования проводятся с 1977 года, статус международных получили в 1990 году. Российские команды участвуют в отборочных соревнованиях с 1993 года, первым финалистом стала команда НИУ ИТМО в 1996 году, первым победителем — команда Санкт-Петербургского государственного университета в 2000 году. Всего отечественные команды принесли нашей стране семь побед.
В этом году Россия представлена командами из 15 вузов — это почти половина европейского дивизиона нынешней олимпиады. Свои команды прислали Алтайский государственный технический университет, Ижевский государственный технический университет, Московский авиационный институт, Московский государственный университет, Московский институт стали и сплавов, Московский физико-технический институт, Новосибирский государственный университет, Пермский государственный национальный исследовательский университет, Самарский государственный аэрокосмический университет, Санкт-Петербургский академический университет, Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики, Санкт-Петербургский государственный университет, Саратовский государственный университет, Уральский федеральный университет, Уфимский государственный авиационный технический университет. Всего же в Санкт-Петербург приехало 120 команд из 36 стран мира.
Тур олимпиады проходит так: каждой команде выдается компьютер и от восьми до двенадцати задач для решения в течение пяти часов. Команды пишут решения на языках программирования C, C++ или Java и посылают их на тестирующий сервер. Программы проверяются на большом количестве различных входных тестов, которые неизвестны участникам. Если программа выдала неправильный ответ или не уложилась в ограничения по времени или памяти, то пославшая ее команда получает об этом сообщение и может послать исправленную версию. Задача считается решенной, если программа выдала правильные ответы на всех тестах. В отличие от других олимпиад, частичные решения не учитываются. Побеждает команда, решившая правильно наибольшее число задач.
От других соревнований по информатике эта олимпиада отличается повышенным количеством задач, на которые отводится сравнительно небольшое время. Учитывая, что в распоряжении каждой команды находится только один компьютер, навыки эффективной и слаженной командной работы выходят на первый план. Формат олимпиады считается одним из самых удачных, и поэтому многие университеты мира проводят свои соревнования по этому образцу.
Финальная часть ACM ICPC завершится 3 июля. Команда, победившая в финале, получает вознаграждение в размере двенадцати тысяч долларов США. Каждая из трех других команд, завоевавших золотые медали, получит по шесть тысяч долларов США, серебряные и бронзовые призеры по три и полторы тысячи, соответственно. Следующий финал олимпиады по программированию также примет Россия. В 2014 году соревнования пройдут в Екатеринбурге.