917 мгновений весны

Автор: Денис Коновальчик
Опубликовано в журнале "Компьютерра" №16 от 25 апреля 2006 года

Многим российским "айтишникам" нынешнее 12 апреля запомнилось не только очередным Днем космонавтики. На другом краю света, в американском городке Сан-Антонио, в этот день решалась судьба престижнейшего программистского трофея - кубка, которым Ассоциация компьютерной техники (ACM) награждает лучшую студенческую команду планеты. Полуночники, не смыкавшие глаз у мониторов с оперативной статистикой на сайте соревнований, были вознаграждены с лихвой: сенсационную победу одержала команда Саратовского государственного университета в составе Игоря Кулькина, Романа Алексеенкова и Ивана Романова, ведомая тренером Михаилом Мирзаяновым.

Нынешний розыгрыш стал юбилейным, тридцатым по счету - с тех пор как в 1977 году за вожделенный кубок впервые сразились сборные нескольких американских вузов, успело утечь немало оперативной памяти. За считанные годы после основания чемпионат ACM перерос национальные границы и превратился во всемирные "игры разума": на протяжении последнего времени число участвующих в нем команд раз от разу возрастает примерно на четверть. Разумеется, проведение ежегодного мероприятия такого масштаба требует немалых денег - их в последнее десятилетие предоставляет компания IBM, по окончании турнирных схваток пристально изучающая резюме победителей. Похоже, подобная кадровая политика оправдывает себя: на открытии нынешнего чемпионата представители Голубого Гиганта торжественно поклялись продлить свое сотрудничество с ACM еще как минимум на пятилетку.

Медалисты студенческого чемпионата мира по программированию 2006

Право попасть в финал, увы, дается немногим: так, нынешний розыгрыш начинали более чем 5600 институтских дружин 84 стран, а билеты в Сан-Антонио достались лишь 83 командам по три человека в каждой. Согласно каноническим правилам, за пять часов соперникам предстояло решить как можно больше из десятка предложенных задач, отослав свою программу на растерзание тестовому серверу в локальной сети. В качестве "спортивных снарядов" использовались языки C, C++, Java и старина Паскаль, для которого нынешний финал - последняя гастроль: начиная со следующего розыгрыша, он выбывает из числа "официальных языков" турнира. Азарт соревнований держит в напряжении до последней минуты: набор задач выбирается с таким расчетом, чтобы даже теоретически самой сильной из команд не хватило времени с ними расправиться. Как видно, составители нынешнего пула задач всерьез отнеслись к упрекам критиков в том, что многие проблемы первенства оторваны от реальной жизни: например, в борьбе за драгоценные очки нынешним участникам пришлось поразмыслить над самым экономичным способом протягивания локальной компьютерной сети, а также оценить степень отчуждения между представителями заданных психологических групп. Кроме числа решенных задач, в зачет идет сумма временных интервалов, прошедших от стартового свистка до момента сдачи. Причем каждый неудачный подход к сданной задаче безжалостно карается двадцатью минутами штрафа.

По традиции, с целью нагнетания интриги за час до конца соревнований оперативные данные с "поля сражений" перестали поступать в онлайн. На тот момент турнирная таблица проливала настоящий бальзам на душу отечественного болельщика: с пятью очками в активе лидировали саратовцы, лишь по штрафному времени опережавшие питомцев Алтайского технического университета, а следом шла внушительная группа "четырехзадачников" во главе с командой из нидерландского Университета Твенте. Любопытно, что саратовский триумф на многих сайтах новостей начали праздновать задолго до объявления официальных результатов: кое-кто из рассеянных журналистов принял "замороженные" результаты за окончательные. Хотя, как показывает история соревнований, в последний час турнирная ситуация нередко меняется до неузнаваемости, на сей раз "торопыгам" повезло: саратовцы уверенно доиграли эндшпиль, сдав еще одну задачу и сохранив за собой первую строчку. А на вторую, как чертик из табакерки, выскочила сдавшая в последний час сразу две задачи команда Ягеллонского университета, потеснившая забуксовавших на финишной прямой алтайцев с голландцами и со счетом 1258:917 уступившая победителю по штрафным минутам.

Нынешнее чемпионство стало уже четвертым для российских команд: в 2000 и 2001 году этим титулом владел Санкт-Петербургский университет, а два года назад турнирную таблицу возглавили их земляки из Института точной механики и оптики. Впрочем, и саратовцы на всемирных финалах отнюдь не новички: в 2002 и в 2003 году их команда завоевала серебряную медаль, причем в 2002 году стала чемпионом Европы (оба эти сезона в ее составе играл нынешний тренер). Помимо первого мирового чемпионства команды из российской провинции, нынешний розыгрыш войдет в историю и потрясающей кучностью боя россиян: слаженными усилиями Саратова, Барнаула, Питера, Москвы и Уфы мы прибрали к рукам ровно половину мест в лидирующей десятке - такого успеха на первенстве ACM наша страна еще не знала.

Совершить американский вояж саратовцам помогли щедрые меценаты, в числе которых - вездесущая корпорация Google, а также компании EPAM Systems и Selectosa Systems. О том, как новоявленные чемпионы открывали Америку, можно узнать из блога саратовской команды, уютно расположившегося под крылышком еще одного спонсора, компании Mail.Ru. Кроме колоритных репортажей из первых уст, шустрые чемпионы на привалах между сражениями успели провести свой собственный конкурс по программированию, а также поместить немало забавных постов о достопримечательностях штата Техас и нравах местных жителей. Будем надеяться, что нынешнее турне поспособствовало расширению кругозора не только российских программистов, но и их заокеанских коллег. Как ни крути, а географические представления литературного персонажа, мечтавшего уехать "В деревню, к тетке, в глушь, в Саратов", в начале XXI века заметно устарели.

Блиц-интервью с тренером чемпионов мира по программированию, аспирантом Саратовского государственного университета Михаилом Мирзаяновым

Как осуществлялась подготовка будущих чемпионов?

- Много лет тренировок! В неделю ребята занимались 10–15 часов, а в период сборов по 5–8 часов в день. Все они работают разработчиками ПО, и этот опыт тоже оказался полезен. В частности, он помог команде быстро перейти на язык Java.

Не слишком ли сложными выдались испытания?

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

В расписании чемпионата место оглашения результатов отмечено одним словом - "Surprise". Так где же все-таки "раздавали слонов"?

- Церемония состоялась на ранчо. Мы шутили, что это ранчо Буша. Нам было предложено родео (как зрителям) и прочие американо-мексиканские развлечения. Ловля свиней, бега на армадиллах, спортивные игры. Так как соревнования студенческие, текилу не разливали. Пришлось взять свою.

Происходили ли с вами на чемпионате мира события, которые явились большей неожиданностью, чем результат выступления вашей команды?

- Нет.

Поступали ли новоявленным чемпионам конкретные предложения от IBM?

- Во время состязания сотрудники IBM активно предлагают участвовать в различных фирменных проектах. Замечу по опыту предыдущих лет - недостатка в серьезных предложениях нет. Пристальное внимание к чемпионату проявляют и другие крупные корпорации.

Планируют ли нынешние чемпионы мира участвовать в следующем отборочном цикле?

- В соответствии с правилами эти ребята больше не смогут участвовать в чемпионате (в составе нынешней команды два аспиранта и пятикурсник. - Д.К.). Разумеется, если правила смягчат, команда попробует свои силы вновь. Однако вероятность такого события невелика.

Есть ли в вашем университете команды, способные "перехватить эстафетную палочку"?

- В СГУ готовится около десятка команд, три из них на тренировках регулярно показывали результаты, сравнимые с чемпионскими.


<<Зоопарк профессора Юданова
Все материалы номера
Микрофишки >>