05.08.2014 00:22
Digital

Студент из России победил в ЧМ по спортивному программированию

Второкурсник питерского вуза победил на чемпионате мира по спортивному программированию
Текст:  Алексей Дуэль
Российская газета - Федеральный выпуск: №174 (6446)
Чемпионат мира по спортивному программированию в индивидуальном зачете "Яндекс.Алгоритм", состоявшийся в Берлине, выиграл студент Санкт-Петербургского университета информационных технологий, механики и оптики, белорус Геннадий Короткевич. В финальном этапе участвовали больше 20 человек, а в отборочных - 4 тысячи программистов со всего мира: Китай, Тайвань, Япония, США, страны Европы и СНГ, всего больше 70 государств. Среди них - призеры и победители ACM ICPC, TopCoder Open, IOI и "Яндекс.Алгоритма" прошлых лет. Формула успеха заключительного тура проста: шесть заданий, 100 минут и возможность набрать бонусы. Чтобы получить их, надо быть абсолютно уверенным в своих силах и рисковать, не проверяя свое решение задания во время соревнований.
Читать на сайте RG.RU

- Существуют два способа посылать свое решение в судейскую систему: в открытую и в закрытую, - рассказал отвечавший за разработку заданий преподаватель Школы анализа данных Михаил Левин. - В первом случае участник сразу получает вердикт: правильно решил задание или нет. Если что-то не удалось, можно поискать ошибку и отправить свой программный код еще раз. Во втором - узнает о своем результате только при оглашении итогов соревнований. В таком случае неверно написанное исправить уже невозможно. Но за риск участник получает бонусные баллы.

Никифоров: Программистов нужно готовить с самого раннего возраста

Именно набранные бонусы вывели Геннадия на первое место. Он, как и еще десяток участников, смог правильно выполнить четыре задания из шести. Это считается неплохим результатом. Победу юноше принесла тактическая хитрость: сдавая все "втемную", он набрал максимальный бонус. Его конкуренты осторожничали и получили меньше дополнительных баллов. Из-за чего отстали от лидера.

В финальном этапе соревнований участвовали больше 20 человек, а в отборочных - четыре тысячи ведущих молодых программистов из 70 стран

Спортивное программирование активно развивается уже полтора десятка лет. За этими соревнованиями пристально следят руководители ведущих высокотехнологичных компаний всего мира. Те, кому повезет получить место в первой пятерке, тут же получат на выбор несколько предложений о работе в IBM, Google, Facebook и т.д. Минимальный оклад - 7000 долларов в месяц.

- Задания здесь вполне жизненные, но обычный программист над ними будет сидеть по нескольку недель, а тут надо придумать правильное решение и реализовать его за десять-пятнадцать минут, - объясняет Михаил Левин. - Правда, коды, написанные впопыхах на соревнованиях, для полноценной работы использовать обычно не удается: их потом трудно развивать, оптимизировать. Но основа - вполне действенная. Если человек смог вот так, на коленке, справиться с заданием, то в спокойной рабочей обстановке оно для него тоже не станет проблемой.

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

Главный приз ЧМ по программированию достался СПбГУ

Участникам соревнований от 18 до 27 лет. Кибернетический спорт - удел молодых. "Команда спортивных программистов обычно занимается два раза в неделю по пять часов вместе, а в остальные дни каждый проводит самостоятельную подготовку, - рассказал Григорий Бакунов, директор по распространению технологий "Яндекса". - Действующим программистам бывает трудно уделить столько времени киберспорту. Хотя бывает, когда кто-то специально увольнялся из компаний - организаторов соревнований, чтобы принять в них участие. Сотрудникам обычно выступать на них запрещено". Методов подготовки, собственно, всего два. Это или решение задач, уже использованных на прошедших соревнованиях. Или отработка построения типовых алгоритмов, которые встречаются чаще всего.

- Я пошел по другому пути: принимал участие в виртуальных соревнованиях в Интернете, писал программы просто для себя, - поделился победитель Геннадий Короткевич. - Я за компьютером с шести лет, родители - они преподают компьютерные дисциплины в Гомельском университете - помогли начать. Мне понравилось, так что с выбором профессии все было очевидно. Пока учусь в лучшем, на мой взгляд, университете. Но думаю, скоро начну и работать. Так что открыт для рассмотрения вакансий.

Геннадий уже двукратный чемпион "Яндекс.Алгоритма". На этот раз за успешное выступление кроме главного приза победителю полагался еще и чек на 300 тысяч рублей. На что их потратить двукратный чемпион пока не думает.

Доска почета

Победители "Яндекс.Алгоритма"

1. Геннадий Короткевич (Беларусь), студент НИУ ИТМО

2. Хосака Кадзухиро (Япония), Токийский университет

3. Ван Циньши (Китай), Университета Цинхуа

Технологии