The ACM ICPC International Collegiate Programming Contest is the most prestigious team programming competition for students. The ACM ICPC differs from other sport programming contests, as it is impossible to win without good teamwork. The required number of team members is three students. Participants have a chance to place 1st if only they can solve tasks collectively.
Before competing with world’s programming champions at the semifinal an applicant has to gather a team and take part in quarter-finals. The quarters take part in Russia, Uzbekistan, Kazakhstan, Armenia, Georgia, Kyrgyzstan and Azerbaidzhan, so participants from different regions don’t have to go far to take part in the contest — the rules don’t allow anyone to participate remotely. Each region is also subdivided. For example, the northern sub region, which includes several regions surrounded St. Petersburg, has its center at ITMO University, one of alma mater of ACM ICPC.
Those who are under 24 can participate in the contest. Furthermore, students can join quarter and semifinals five times and take part in the finals two times only.
The judge panel includes participants and winners of previous ACM ICPC contests, as well as their tutors. As for the northern region, its contests are judged by Andrey Stankevich, the main coach of ITMO sport programming team, two-times world champions Gennady Korotkevich and Niyaz Nigmatylin as well as champions Pavel Mavrin, Boris Minaev, Artem Vasilyev, Maksim Buzdalov, Pavel Kuniavsky and others.
The average amount of tasks is ten. They are checked by a special system, which compares input data with the correct results. The solution given by a team has to take no longer than two seconds processing and use up no more than 256 megabytes of random access memory (RAM).
The tasks have various difficulty levels. To solve the Anniversary Cake problem the participants had to develop an algorithm for cutting a cake with two birthday candles into two parts taking into account that each piece has to have a candle and that their parameters have to contain whole numbers. The algorithm was based on six parameters (all of them are also whole numbers) such as cake size and candles' coordinate positions. Some 89 teams out of 107 solved it. Solving the Hard Cuts problem, the participants had to cut a rectangle into the fewest possible amount of squares with sides equal to a whole number. The ITMO team was the only one which solved this.
The teams from St. Petersburg State University and St Petersburg Academic University took the 2nd and 3rd places respectively. At the semifinals, which will take place at ITMO on December 3−4, 14 teams will compete.
The ACM ICPC’s final will be in Rapid City, the USA on May 20−25, 2017.