Спортивное программирование глазами чайника: фоторепортаж

фото: автора

Спортивное программирование глазами чайника: фоторепортаж
– Спортивное программирование – это как? Сначала шахматисты пишут программы, потом прыгуны в высоту, а потом боксеры? – подначивал меня муж-программист, провожая в Берлин на финал международного чемпионата по спортивному программированию «Яндекс.Алгоритм-2014».
– Смейся-смейся, ты у меня еще визитки этих «боксеров» просить будешь. Зуб даю! – огрызнулась я.

И накаркала. Зуб пришлось оставить в Берлине – терпеть адскую боль не было больше сил. А вот потрясающие впечатления – все до единого – я привезла с собой в Харьков.


Отель Radisson Blu
в центре Берлина,
в котором нас поселили, знаменит крупнейшим в мире цилиндрическим аквариумом высотой
с десятиэтажный дом. Внутри аквариума – стеклянный лифт,
на котором можно подняться на смотровую площадку.

В аквариуме живут полторы тысячи тропических рыб


Именно в этом отеле на седьмом этаже IT-компания «Яндекс» арендовала помещение для нового офиса. Кстати, аренда, по словам директора по распространению технологий «Яндекса» Григория Бакунова, в Берлине дешевле, чем в Москве, Киеве или Минске. Берлинский офис открылся в феврале, и сейчас там работают не больше десяти программистов – занимаются разработкой голосовых команд и карт. К концу года наберут еще пару десятков разработчиков, говорит Григорий Бакунов. Сейчас проходят собеседования.

В только что отремонтированных помещениях практически пусто – только администратор на resepshn да пара-тройка программистов.

В берлинском офисе «Яндекса» пока не так много сотрудников

Еще не вся мебель расставлена по местам, не вся техника установлена, но уже очевидно, что это пространство предназначено для творчества и комфортной работы.

– Обратите внимание на стулья! – призывает журналистскую братию Григорий. – По непонятной мне причине журналисты не обращают внимания на стулья. А ведь для разработчика – это одна из самых ценных вещей. Эти стулья – одни из самых дорогих, какие только можно найти, но зато самые удобные.



Программисты в «Яндексе» сидят на правильных стульях

Накануне финала в офисе не заметно беспорядочного движения, не слышно истошных криков: «Вася, куда ты желтый провод дел?». Атмосфера – спокойная и, на первый взгляд, даже расслабленная. Все идет по заранее известному алгоритму, где у каждого свои задачи и свои методы ее выполнения.



Сотрудники «Яндекса» не расстаются с компьютером даже в комнате отдыха

– Спортивное программирование очень отличается от обычного, – просвещает журналистов менеджер академических программ «Яндекса» Михаил Левин. – За ограниченный промежуток времени – в нашем случае за 100 минут – людям нужно решить несколько задач, а именно шесть, каждую из которых обычный программист мог бы решать неделю, а то и месяц. А мог бы и вообще не справиться.

Как и в любом другом спорте, здесь есть тренеры. Командные тренировки, по словам Михаила Левина, проходят в среднем два раза в неделю по пять часов. Кроме того, существуют индивидуальные тренировки и регулярные соревнования, которые проводятся примерно раз в неделю.

– Еще один признак того, что это настоящий спорт – несмотря на отсутствие ограничений, вы практически не увидите здесь людей за тридцать. Ребята, которые могли решать задачи молниеносно, с возрастом начинают работать немножечко медленнее – нейроны мозга не так быстро реагируют. И «ветеранам» становится сложно конкурировать с молодыми.



Обычный программист мог бы решать одну задачу в течение недели, а то и месяца

С интересом наблюдаю за участниками финала. Обычные ребята, почти мальчишки. Их не узнают на улицах, их лица не мелькают на экранах телевизоров, они не ходят по красным дорожкам и не раздают автографы. Напротив, чураются излишнего внимания прессы и прячутся по углам от объективов фото- и видеокамер. Тем не менее они звезды – звезды в своей компьютерной Вселенной: программисты с мировым именем, призеры международных чемпионатов по спортивному программированию, разработчики Google и Facebook (по правилам «Алгоритма» сотрудники «Яндекса» не имеют права участвовать в соревнованиях, которые организует их компания).



В Берлине собрались программисты с мировым именем (в красной футболке – харьковчанин Дмитрий Джулгаков)

«Яндекс» проводит индивидуальные чемпионаты с 2011-го – участников тогда было совсем не много. В этом году в отборочных турах, которые проходили с 1 по 15 июля, напрягали мозги уже почти четыре тысячи программистов из более чем 70 стран. В финал вышли 25 самых быстрых и креативных из девяти стран, однако не все доехали до Берлина. Досадно, но именно одному из харьковчан – выпускнику мехмата ХНУ им. В.Н. Каразина Евгению Соболеву – консульство Германии отказало в выдаче визы. Его брату-близнецу Дмитрию пришлось отдуваться за двоих. Впрочем, это так – для красного словца: соревнования индивидуальные, и каждый работал исключительно на собственный результат. Вообще в финал попали четверо украинцев, и трое из них – харьковчане: братья Соболевы и Дмитрий Джулгаков (сейчас живет в Сан-франциско, работает в Facebook).



Дмитрий Соболев (Харьков) за три секунды до старта

Итак, финал. Никаких тебе стартовых пистолетов, судейских свистков, упражнений для разогрева мышц перед стартом. На лицах участников – ни малейшего напряжения. Просто вскрывается конверт с заданиями – и время пошло. За 100 минут нужно решить шесть задач. Вот одна из них. По мнению авторов – самая простая из набора.

Ночью в озеро, расположенное неподалеку от Васиного дома, упал НЛО. НЛО представлял собой каркас N-мерного прямоугольного параллелепипеда, собранный из титановых ребер, причем все ребра имели целые длины. В момент крушения соединения между ребрами разрушились, в отличие от самих ребер, которые оказались на дне и на берегу озера. С утра Вася пришел на берег озера и нашел K титановых стержней. Предполагая, что эти стержни являются ребрами каркаса НЛО и что, возможно, часть ребер еще находится под водой, определите наименьшую возможную размерность пространства, из которого прибыл НЛО.

И, чтобы уж не оставалось белых пятен в этой космической истории, приведу и решение задачи. Очевидно, что размерность параллелепипеда не меньше количества различных длин ребер. В K-мерном параллелепипеде 2K-1 ребер одного типа, то есть в в случае наличия X одинаковых ребер, для них будет использовано [(X − 1)/2k−1] + 1 измерение. Поэтому в порядке возрастания перебираем все размерности, пока вычисленное по указанной выше формуле суммарное количество использованных измерений не будет меньше или равно текущей размерности. Так как при K = 21 ребер одного типа будет 220 > 106, то перебор будет небольшим.



В ожидании результатов

Все шесть задач за сто минут не покорились никому. Лучший результат – четыре задачи при 66 минутах штрафного времени – показал уроженец Гомеля, студент-второкурсник из Санкт-Петербургского университета информационных технологий механики и оптики Геннадий Короткевич. Гену можно назвать потомственным программистом – родители-программисты преподают в Гомельском университете. Сам он сел за компьютер лет в пять, а программы начал писать в младших классах школы. Вундеркиндом себя не считает – просто занимается любимым делом. Признается, что конкуренция в финале будь здоров – выиграть было довольно сложно.

Серебряным призером стал студент Токийского университета Хосака Кадзухиро, который тоже решил четыре задачи, но набрал 90 минут штрафного времени. Трогательный японец, которого я поначалу приняла за девочку, ни на секунду не расставался с игрушечным зайцем – так вдвоем и вышли на вручение призов.



Это стол Хосаки Кадзухиро. Задачку об НЛО он, кстати, решил верно

Третье место завоевал китаец Ван Циньши из университета Цинхуа – он решил четыре задачи при 125 минутах штрафа.



Интернациональная тройка призеров – белорус Геннадий Короткевич, японец Хосака Кадзухиро, китаец Ван Циньши

За первое место «Яндекс» учредил денежный приз в 300 тысяч рублей (более 6 тыс. евро), за второе – 150 тыс. рублей (чуть более 3 тыс. евро), за третье – 90 тыс. рублей (около 2 тыс. евро). На что потратят свой выигрыш призеры, с ходу ответить они не смогли. Думаю, им доводилось решать задачки и посложнее – на это уж точно мозгов хватит.

Что касается финалистов-украинцев, то десятое место оседлал Антон Райчук из Хмельницкого (сейчас он живет в Цюрихе, работает в Google), на 12-м обосновался Дмитрий Джулгаков, Дмитрий Соболев стал 18-м. И если кому-то вдруг покажется, что результаты – так себе, уверяю вас: быть в числе 25 лучших программистов в мире – это очень круто. Зуб даю!



Соревнования завершены – компьютеры грустят
ОН Клиник Харків

Лента новостей

Вся лента новостей

Архив новостей

Программа "Вечірні Новини"Лого телеканал Р1

Эксклюзивное интервью на Р1Лого телеканал Р1

программа комментарииЛого телеканал Р1

Телеканал Р1 на youtube

Выбор читателей

О нас Реклама Подписка
  • Facebook
  • youtube
  • Twitter
  • rss

Курсы валют от НБУ

100 USD 2783.94 грн
100 EUR 3144.74 грн
10 RUB 4.0942 грн


Новости от за посиланням
Загрузка...
Загрузка...
Афиша кинотеатра "Kronverk Cinema" Дафи