International Collegiate Programming Contest (ICPC) is a sport programming world competition held under the auspices of ACM. At the beginning ACM ICPC participants were mostly from USA and Canada Universities. In 1990, the competition’s geographical reach extended to other continents. Russian universities took part in ACM ICPC for the first time in 1993. Since Russian teams have joined the competition, they were not only the finals participants, but also the championship winners for 8 times! The record-holder is ITMO University, whose teams became champions for five times. Moreover, students of Saint Petersburg State University won the cup of ACM ICPC for three times, and one victory is on account of Saratov State University. Not only teams from these universities are going to participate in the World Finals in Morocco: teams from Moscow State University, Moscow Institute of Physics and Technology, National University of Science and Technology (MISiS), Higher School of Economics, Kazan Federal University and other Russian universities are also among the competition participants.
The competition consists of several stages. In order to reach the final, it is necessary to show the best results in the regional and subregional stages of the competition, which, this year, involved about 13 thousand teams from almost three thousand universities in 90 countries. Therefore, weekly training on local and international level are a part of any sports programmer’s routine.
There are many ways to improve skills to prepare for the ACM ICPC finals. Every year, teams for sports programming attend summer and winter camp, organized specially for them in Petrozavodsk and Izhevsk, where, besides Russian programmers, teams from Poland, the Czech Republic, Japan, Ukraine and Belarus gather together. In addition, a dozen of open championships are held during the year, where it is possible to meet potential ACM ICPC finalists. Open All-Siberian Programming Contest, BSUIR Championship in Belarus, Vekua Cup in Tbilisi, Open Championship of the Republic of Tatarstan ICL and Ural Championship are among these events. The conditions of contests are as close as possible to the ACM ICPC conditions: the participating team, consisting of three people, has only one computer and five hours to solve 10 to 12 fairly difficult problems.
Accoreding to Maxim Buzdalov, the champion of ACM ICPC 2009 and assistant of the ITMO University Department of Computer Technology, an average student who participates in the championship for sports programming solves about 1000 problems a year. Maxim Buzdalov has been training foreign teams for major programming competitions since 2010. He recently returned from Zurich, where, together with Niyaz Nigmatullin, the champion of ACM ICPC 2012 and 2013, has conducted an intensive week-long training session for Swiss teams, including theoretical lectures, problem solving and errors analysis. Five years ago, Switzerland was the first country with students and pupils of which programming champions from ITMO University started working. Now teams from Brazil, the United States, Mexico, Finland and China are willing to learn from employees of ITMO university, a five-time winner of the ACM ICPC.
“Training allows building a mathematical model of the problem, being more precise and accurate in code writing. Knowledge of various solving algorithms, that accumulates throughout the students practice, will also help to orient in the tasks,” Maxim Buzdalov said. “All these skills, together with the the intellectual acumen, that helps to find nontrivial solutions, form a sports programmer. The championship evolves every year, so the teams coaches should always keep themselves in a good "sport" form. For example, Andrey Stankevich, the permanent coach of ITMO University, constantly participates in various individual programming contests.”
During the last month before the final of ACM ICPC all Russian participants mobilize their forces.
“Our university team will participate in the final contest for the first time,” Kamil Hadiev, the team coach of Kazan Federal University, told. “We are training thoroughly, so I think guys have good odds. This week we will take part in the Ural Championship in order to work out in conditions as close to the "battle" as possible once again. It is important for guys not only to fight for a championship medal, but also to enjoy the problem solving process.”
This year ITMO University in Morocco will be represented by Gennady Korotkevich, the first ever winner of the Grand Slam on sports programming, Artem Vasiliev and Boris Minaev.