Финал чемпионата мира по программированию ACM ICPC-2014 пройдёт в Екатеринбурге с 22 по 26 июня. Сегодня мы знакомимся с командой Уральского федерального университета, в состав которой входят Олег МЕРКУРЬЕВ, Александр КРАСНОСЕЛЬСКИХ и Денис МУХАМЕТЬЯНОВ, а также с их тренером Михаилом РУБИНЧИКОМ. Екатеринбургским студентам, представляющим столицу Урала, предстоит сразиться с сильнейшими командами 120 университетов мира.
— Человек поступает на математический факультет. Ему сразу нужно определиться: математик он или программист?
Михаил: — Сейчас нет уж такого чёткого разделения. Программировать надо уметь независимо от того, математик ты или нет. Математику нужно уметь писать код, чтобы проверить какую-нибудь гипотезу.
— Тогда почему ты говоришь, что сам не математик?
— Не математик для АСМ. Я сдавал математику, пока учился. Но в АСМ математика правильнее назвать «думатель» — тот, кто придумывает решение задачи. И мне нет смысла этим заниматься в команде, когда, к примеру, Олег сделает это быстрее, а я быстрее напишу код. У меня больше базисных алгоритмов в голове и т. д.
Бывают команды, в которых всё сбалансировано, или наоборот — участники больше программисты, чем математики. Я играл в такой команде, никто из нас не был стопроцентным «думателем», но в сумме мы могли решать задачи. Олег Меркурьев, Гриша НАЗАРОВ и я — двое были математиками, а я — кодером. То есть они думали и говорили мне решение, а я — всегда за клавиатурой, писал код. Если код не работал, а я не видел в нём ошибки, то распечатывал и отдавал ребятам на проверку.
Михаил: — Тактик на самом деле много. Например, команды из Варшавы открывают 2 Visual Studio и делят экран пополам. Клавиатура одна, и если у кого-то возникает пауза, он может отдать её напарнику на то время, пока думает. Это рискованная, но довольно эффективная тактика, судя по тому, что Варшава очень часто в призёрах ICPC.
— Какая была у вас тактика на последнем полуфинале?
Олег: — Ну, я всё решал и одну задачу написал, потому что её было сложно объяснить, пришлось бы весь код на бумажке написать, частные случаи рассмотреть. На полуфинале в Санкт-Петербурге (NEERC, 1 декабря 2013 года) сдали несколько простых задач, а потом возникли проблемы с идеями. Денис и Саша начинали думать, поскольку писать было нечего. А в итоге в течение 7 минут сдали ещё 3 задачи.
— Как часто вы тренируетесь?
Михаил: — Два раза в неделю — виртуальные контесты, каждый по 5 часов, и лекция. Кто-то один погружается в непонятную для остальных тему, рассказывает, потом решаем задачи по ней, чтобы понять, что она усвоена.
— Многие считают, что программировать может не каждый человек...
Михаил: — Программирование — это такая же профессия, как любая другая, которую можно получить в вузе. Вот решением олимпиадных задач могут заниматься не все. Но ведь можно просто научиться решать задачи на определённые темы, чтобы сдать, к примеру, ЕГЭ. Так же и в АСМ, но тут круг тем гораздо больше, они постоянно дополняются, возникают новые модные темы.
— А вам всем зачем участие в олимпиадах?
Михаил: — Это просто интересное хобби. Но если хочешь развиваться в науке — занимайся наукой. Если хочешь быть крутым в промышленной разработке — занимайся промышленной разработкой. Участие в олимпиадах и на то, и на другое влияет — даёт какие-то плюсы.
Олег: — Прикольная тусовка, интересно общаться с другими АСМ-щиками, играть на соревнованиях, ездить в другие города. Выигрывать — тоже круто!
Денис: — Когда начал заниматься на 1—2-м курсе, на АСМ тратил очень много времени, приходил с пар и садился тренироваться, целенаправленно пытался чего-то добиться. Сейчас для меня АСМ — это определённый стиль жизни. Я потратил на это слишком много времени, мне было бы жалко потерять всё, чем я занимался, поэтому пытаюсь чего-то добиться.
Александр: — Для меня АСМ — это интересные задачи. Я этим и занялся, потому что в 11-м классе к нам пришёл Алексей САМСОНОВ (олимпиадник, тренер) и рассказал о том, что можно решать такие вот интересные олимпиадные задачи. Мне это очень понравилось. Было ощущение, что делаешь что-то реальное и интересное. Я набивал программу, всё работало — и это было очень круто.