Упрек в отрыве от реальности не слишком справедлив. С тем же успехом можно заставлять биатлонистов стрелять по живым мишеням (зрелищность, кстати, повысилась бы). Реальные задачи сопровождаются таким невероятным количеством граничных условий разной степени разумности, что воссоздать их полностью в рамках соревнования невозможно и наверняка не нужно. Впрочем, оргкомитет ACM ICPC, видимо, устал объяснять условность, заложенную в спортивное состязание, и последние несколько лет а списке всегда присутствуют задачи, напоминающие «бизнес-кейсы». В этом году с муравьем Карлом, запутавшимся в ребрах правильного восьмигранника, соседствуют авиадиспетчер, чью работу нужно частично автоматизировать, и работник бюро городского планирования, которому нужно оптимизировать городской трафик. Понятно, что на месте авиадиспетчера легко мог оказаться муравей, и бизнес-упаковка на суть задачи никак не влияет.
Что касается навыков командной работы, то они для успешного выступления на чемпионате являются ключевыми. Успех команды во многом зиждется на -зсколько хорошо участники исполняют свои юли. Компьютер на троих один, и для экономии времени важно максимально эффективно распределить связанности. Как правило, "Центровой» у команды - один. Именно он придумывает, как решать задачу, и пока двое остальных участников программируют решение, ломает голову над следующей. Теоретически роли могут меняться в ходе соревнования, но на практике такое происходит редко.
Разумеется, хорошие программисты здесь на вес золота: если поинтересоваться индивидуальными достижениями участников, то окажется, что в самых успешных командах многие могут похвастать ведущими позициями в индивидуальном рейтинге TopCoder. Но это всего лишь необходимое условие. Московскому программисту Петру Митричеву (второе место в TopCoder Algorithm) и китайцу ACRush (первое место в том же рейтинге плюс победа в прошлогоднем Google Code Jam) ни разу не удавалось подняться в чемпионате ACM ICPC выше второго места.
- Даже «звездный» игрок победы не гарантирует. - говорит Роман Елизаров. - Нужна уникальная команда. И немного везения.
Петр свои попытки уже использовал и теперь наблюдает за происходящим из зрительного зала, пристроившись на стульчике чуть в стороне от остальных. ACRush находится с другой стороны баррикад. Он второй раз играет за команду университета Цинхуа, и эта команда успела за пять часов сдать десять задач из одиннадцати. Против девяти у нашего ИТМО,
Мы окончательных данных о решенных задачах еще не знаем. У нас перед глазами оживает замороженная за час до окончания таблица, и университет Цинхуа взлетает на первое место. Тренер ИТМО Андрей Станкевич смешно вскидывает руки, сидящий за ним Владимир Парфенов - декан факультета ИТ и программирования в том же СПбГУ ИТМО - напряженно подается вперед.
ЗАЧЕМЭТОIBM?
Еще одно заблуждение, с которым я приехал в Стокгольм, касается мотивации компании IBM, генерального спонсора чемпионата мира с 1997 года. Я по наивности полагал, что IBM рассматривает чемпионат как своего рода кузницу кадров, в которой отбираются самые достойные для работы в корпорации. В какой-то степени в этом заблуждении повинны наши же статьи, посвященные Ивану Романову (Саратов -› Цюрих). В какой-то - моя собственная невнимательность, потому что пример Ивана, скорее, исключение. Никакого отлаженного механизма по переманиванию перспективных студентов нет. IBM старается блокировать совсем уж наглые рекрутер-ские приемчики других компаний (так, коспонсоры региональных соревнований не могут заниматься отбором кадров и рекламировать себя в качестве работодателя на соревнованиях), но и сама особой активности в этом отношении не проявляет. Некоторые участники чемпионатов в конце концов оказываются
в IBM, но большинство - находит работу где-то еще, благо предложений хватает.
- Предложения, связаные с переездом, интересны, в первую очередь, ребятам из регионов, - объясняет Роман Елизаров, участник первой команды ИТМО, добравшейся до финала в 1995 году. - А если ты живешь в Москве или в Питере, то легко можешь найти себе интересную работу на месте, Хоть в российской фирме, хоть в Sun, Intel или Google.
Первые российские чемпионы мира (СПбГУ, 2000 год) устроились не так уж плохо. Олег Етеревский работает в питерском Google, Андрей Лопатин тренирует нынешнюю команду СПбГУ, а Николай Дуров в свободное от сайта «ВКонтакте" время занимается наукой.
Сам Роман Елизаров тоже остался в Питере, организовав с другими выпускниками ИТМО компанию, разрабатывающую торговые платформы для
U.'ЖЕНЩИНА, ДУМАЙ, ЧТОГОВОРИШЬ, ДА?»
фондового рынка. Как и сотни других волонтеров, он участвует в организации ACM ICPC на добровольных началах, освобождая рабочий график, чтобы поучаствовать в финале и отборочных соревнованиях. Впрочем, в Стокгольме он, скорее, отдыхает и болеет за «своих». А еще участвует в конференции региональных координаторов, И, наверное, обмывает награду - в этом году Роман Елизаров, профессор Владимир Парфенов и ректор Владимир Васильев как представители ИТМО получили DeBlasi Award, которая вручается за выдающийся вклад (outstanding contribution) в развитие ICPC.
Кроме того, Васильев, Парфенов и Елизаров представляют Санкт-Петербургский ИТМО как вуз, в котором будут соревноваться программисты в 2013 году.
РУССКИЙИПИТЕР
Принципы, по которым АСМ (и, очень вероятно, IBM) выбирает университет, где будет проведен финал чемпионата мира, никогда явно не озвучивались и, вообще говоря, постороннему наблюдателю неясны. Не исключено, что желающих и имеющих возможность приютить у себя ICPC не так уж много, это, в конце концов, недешево - Королевский Технологический институт (Стокгольм) заплатил за право принимать у себя чемпионат несколько сотен тысяч евро. Два года назад принимающей стороной вообще выступала японская лаборатория IBM - то ли в честь своего двадцатипятилетия, то ли потому, что в тот год подходящих университетов не нашлось. Я поинтересовался причинами такого решения у сотрудников IBM, но внятных ответов не получил, если не считать вскользь брошенной одним из организаторов реплики. Мы случайно встретились в лифте, я у него ничего, разумеется, уже не спрашивал, но, видимо, токийский вопрос его зацепил.
- Я тут подумал, - сказал он, - и вспомнил, что нет такого правила, чтобы чемпионат проводился именно в университете.
Действительно, мет. И Королевский технологический, вообще говоря, не лучшая площадка для такого мероприятия, что повлекло за собой незначительные изменения регламента (зоне болельщиков отвели другое здание).
Следующий финал внесет свои изменения. Чемпионат 2010 года будет проводиться в Харбине, в феврале, чтобы конкурсанты могли полюбоваться на проводящийся ежегодно фестиваль ледяных скульптур. Сам фестиваль, если верить фотографиям, представляет собой неописуемой красоты зрелище,
однако перенос финала с марта-апреля на начало февраля скорее всего приведет к переносу региональных соревнований - в общем, времени подготовиться у тренеров и игроков в этом году будет меньше, чем обычно.
В 2011 году финал, вероятно, будет проходить в Малайзии. Следующий, возможно, в Варшаве, а финал 2013 года, если все сложится, пройдет в Питере.
Интересно, что Санкт-Петербург не был первым российским кандидатом на проведение ACM ICPC. Поначалу была идея собрать программистов на острове Русский, где в 2012 году планируется провести саммит АТЭС. В настоящее время остров, на котором проживает чуть больше пята тысяч человек, для проведения международных конференций не слишком приспособлен. Формально являясь одним из районов Владивостока, остров на самом деле представляет собой независимое и слегка заброшенное образование. В планах принимающей стороны - выстроить к двенадцатому году деловой центр, гостиницы, океанариум, а главное, мост, который свяжет Русский с материком (сейчас добраться от острова до Владивостока можно только на пароме). Однако все эти планы были одобрены еще до всемирного экономического кризиса, и хотя строительство моста идет в прежнем темпе, а правительство неоднократно напоминало, что все запланированные объекты будут возведены в срок, организаторы ICPC с нашей стороны решили подстраховаться и использовать инфраструктуру, которую построили в срок триста лет назад. Это как-то вернее.
Так ACM ICPC 2013, не успев обосноваться на Дальнем Востоке, переехал в Питер.
ТАКЗАЧЕМЭТОIBM?
Возвращаясь к вопросу, зачем все это IBM, несправедливо будет не привести официальное объяснение, Поддержка корпорацией ICPC прекрасно укладывается в рамки концепции Smarter Planet. Дескать, если компания помогает создавать более умные транспортные системы (см, прошлый Recycle), или более умные медицинские системы, или более умные электросети, то помогать индустрии с умными людьми ей сам Томас Уотсон велел.