Original Material
"В наших соревнованиях нечестных методов не бывает"
Поздравляя чемпионов, Дмитрий Медведев не упустил возможности заметить, что успехи студенческих команд должны воплощаться «в производственные достижения, возможности, которые позволят нашей стране действовать в конкурентном мире агрессивно, настойчиво». По мнению президента, решить проблему создания и развития инновационной экономики и IT-индустрии в России можно в первую очередь за счет малых и средних предприятий: «Попытка решить проблему создания инновационной экономики и развития IT-индустрии за счет создания крупных компаний -- она вряд ли достигнет своего успеха. Вот мы создали, скажем, госкорпорацию по нанотехнологиям. Это такой инструмент, который где-то работает, а где-то вообще не работает, но самое главное, что он не создает ткань. Это просто одна большая структура, у которой много денег и которой еще нужно понять, как правильно их истратить, чтобы потом не упрекнули, что они ушли в песок».
Говорил президент также -- в который уже раз -- и о важности диверсификации национальной экономики и сетовал на то, что российский капитал предпочитает воспроизводиться где угодно, только не в высокотехнологичной промышленности, не в IT-индустрии.
После встречи с президентом страны Евгений КАПУН, один из участников команды Санкт-Петербургского государственного университета ИТМО, выигравшей абсолютное первенство в финале ACM-ICPC, поговорил с нашим корреспондентом.
-- Президент использовал встречу как повод еще раз сказать о необходимости диверсификации российской экономики...
-- Дмитрий Анатольевич упоминал об этом, говорил, что надо развивать IT-индустрию. Нашу победу приводил как пример того, что у России есть потенциал в этой отрасли.
-- Это было главным в разговоре?
-- Сначала президент поздравил нас, потом стал больше спрашивать, чем говорить. Мы рассказали о том, как проходили соревнования, сообщили ему условия трех конкурсных задач. Дальше разговор пошел об IT-индустрии, о том, что она меньше страдает от кризиса, о том, почему она недостаточно хорошо развивается. Что надо сделать.
Говорили о том, что происходит с победителями чемпионатов по программированию через несколько лет. Большинство из них остались в России. Некоторые стали тренерами, готовят школьников и студентов для соревнований. Кто-то стал разработчиком программных продуктов, многие занялись наукой.
-- То, чего удалось добиться вам, -- это спорт высших достижений. Как это связано с IT-индустрией, т.е. созданием коммерческих, используемых множеством людей программных продуктов?
-- Коммерчески успешная программа не обязательно должна иметь массовое применение. Она может делаться под заказ, использоваться только в одной компании или быть разработанной для уникального оборудования и при этом очень дорого стоить.
На соревнованиях даются задачи, которые могут быть похожи на те, что встречаются на практике.
-- А со стороны кажется, что это только логические задачи, головоломки, не имеющие связи с реальной жизнью программиста.
-- Да, любая задача -- абстракция, из которой многие аспекты реальной жизни изъяты, но тем не менее связь с жизнью в них не утрачена. Совсем реальную задачу, понятно, давать на соревнованиях нельзя. Но это и не только чистая математика.
-- Ваша команда не так давно выступает в этом составе. Когда вы к ней присоединились?
-- За полгода до финала чемпионата. Отборочный цикл, начиная с четвертьфинала, мы уже выступали вместе. Но формирование команды начинается до соревнований, на тренировках. В ИТМО тренировки проходят в режиме реальных соревнований дважды в неделю. Набор задач -- те, которые уже были на соревнованиях ACM-ICPC и на других состязаниях... Один компьютер, команда из трех человек. Пять часов на решение.
-- Два раза в неделю тренировки в режиме настоящих соревнований? Это очень тяжело?
-- Это не очень тяжело. Не сказал бы, что тренировки так уж нагружают. Основная проблема -- поздно уходить приходится. Вообще для тренировок трудно выделить время. Пять часов после учебы, потому и поздно заканчиваем. Зато процесс соревнований в финале уже не кажется чем-то новым. Это ведь уже было на тренировках.
-- Как распределяются обязанности членов команды? Как вы взаимодействуете? Ведь компьютер один на троих.
-- Да, очень важно, что компьютер один. Было бы три, распределили бы задачи между собой и решали бы. А с одним компьютером все становится гораздо интереснее. Возникает потребность больше времени тратить на работу без компьютера.
Начальное состояние -- начинаем читать задачи. В команде все читают разные задачи, ищут простые, это отработано на тренировках. Очень важно решить простые задачи и сдать как можно быстрее, это уменьшает штрафное время. Поэтому простую задачу кто-то из членов команды может просто взять и решить самостоятельно. Со сложными задачами не так: идея, которая рождается у одного члена команды, может оказаться частью общего решения. Поэтому нужно взаимодействовать. Совмещать фрагменты решения. Тут командная работа и нужна.
-- Очевидно, в команде есть те, кто лучше других кодирует, а кто-то лучше алгоритмизирует?
-- Это есть. Я, например, за весь финал за компьютер не садился ни разу. Но решения придумывал. Однако придумыванием решений дело далеко не ограничивается. Решение нужно еще и набрать на компьютере, нужно понимать условия задачи и представлять их в виде математической модели. Бывает много лишней информации в тексте задачи, и ее читает кто-то один, а потом объясняет команде. Один человек заканчивает кодирование, другой уже ждет, чтобы как можно быстрее сесть за компьютер. Поиск ошибки, если задача не принята, -- это тоже отдельная работа. Проверка кода, набранного другим. И все занимаются этим. Нет жестко закрепленных ролей, нет и того, кто распределяет работу. Но условия всех задач должны знать все.
-- Вы общались с соперниками из других стран?
-- Да. Главным образом, в день соревнований. Жюри готовилось объявить результат, а мы его уже знали, поговорив с членами команды университета Циньхуа (основной соперник россиян в борьбе за первое место. -- Ред.). Узнали, сколько задач они решили, и поняли, что при равном количестве сданных задач опережаем их по времени, т.е. выигрываем чемпионат.
Говорили также об особенностях подготовки. В других странах, например, изучаются как типовые совсем не те алгоритмы, что изучаем мы.
-- Вы имеете право выступать в финале ACM-ICPC и через год в Харбине?
-- Да, право такое есть. Будет тяжелее. Другой часовой пояс, февраль. Организаторы решили приурочить финал к фестивалю снега и льда. Для нас это означает, что традиционные сборы российских команд в Петрозаводске, которые поводятся перед финалом, могут быть отменены. Перенести их сложно, в январе ведь сессия.
-- Китайцы проявили коварство?
-- Вряд ли. Нечестных методов в наших соревнованиях не бывает.
Полный вариант интервью будет опубликован на iToday.ru.
Подготовлено совместно с iToday.ru