Three intrepid Carnegie Mellon computer science students find themselves sequestered in a windowless building near the mountainous Russian frontier. The setting might conjure images of spy-movie intrigue or concerns of real-life conflict in Ukraine.
But the CMU teammates—Aram Ebtekar, a PhD candidate in computer science; Bo Ma, a master’s student in the Institute for Software Research; and Ajay Ravindran, a senior computer science major—are too busy to contemplate their surroundings. They’re working intensely to solve coding problems in a timed race against international rivals.
It’s all part of the Association for Computing Machinery’s 2014 International Collegiate Programming Contest (ACM-ICPC), which is being held in Ekaterinburg, Russia. The city is 1,000 miles east of Moscow and 1,300 miles from Kiev, far from current military conflicts, though the industrial city of 1.5 million experienced turmoil during the Bolshevik Revolution and the failed Soviet coup of 1991. Now, like in Pittsburgh, its civic leaders hope a focus on technology and international commerce will extend its vitality in the 21st century.
The ACM-ICPC fits that vision. The ACM is the leading academic and scholarly organization in computer science, with 100,000 members and 500 college and university chapters, and a global reach on six continents. The ICPC emphasizes high-pressure competition. Teams of three participate in a five-hour contest in which they must solve as many problems as they can from a list of 10. For example:
- Compute the smallest possible circle that encloses n points from among m given points in the plane.
- Given n, compute the number of ways tiles measuring 2 by 2 can be placed in a field measuring 3 by n.
The answers must be written in C, C++, or Java. Teams are rewarded for speed and penalized if they need multiple submissions to get a solution to work. The answers that work best are invariably the most elegant algorithms.
CMU offers an elective class, taught by Daniel Sleator, to help form and prepare teams. For 2014, five CMU teams went to Youngstown State University for the regional competition. CMU’s top team won, which earned them the invitation to Ekaterinburg. “ACM only invites about 20 American teams each year,” says Sleator. “We’ve gone for the past 10 years pretty consistently.”
The Carnegie Mellon team doesn’t win the 2014 competition, but the lone undergraduate of the team, Ravindran, says just making it that far felt like a victory.
—Charles Rosenblum (assistant CMU teaching professor)