In a familiar display of aptitude, determination, and collaboration, a Yale team emerged victorious at the recent International Collegiate Programming Contest (ICPC) Regionals and is set to compete later this week at the ICPC North America Championship in Orlando, Florida.
The ICPC is an annual multi-tiered programming competition among universities from around the world and is considered one of the most prestigious and challenging programming competitions for college students. At the upcoming North America Championship, Yale will compete against 49 other elite teams of student programmers from institutions across North America, including MIT, Harvard, Georgia Tech and Purdue.
The team of computer science students Andrew Yuan ‘23, Deyuan Li ‘24 and Dion Ong ‘24 is coached by computer science professor Ruzica Piskac and has had incredible success at past ICPC competitions. In 2022, the team earned an Honorable Mention at the ICPC World Finals in Bangladesh and placed in the Top 10 at the ICPC North American Championship in 2021.
The competition focuses on testing participants’ problem-solving skills, algorithmic knowledge and programming abilities. Teams of three students collaborate to solve a set of complex programming problems within a given time frame. The problems range from mathematical and logical puzzles to algorithmic challenges, requiring contestants to quickly devise and implement efficient solutions. When it comes to strategizing, the team adopts a dynamic approach and collaboration.
“We pretty much allocate problems randomly at the start and if we have ideas, we just go ahead and solve them ourselves,” said Ong. “Each of us has our own specialties in the types of problems that we tend to favor, but if we have trouble solving the problem in a certain amount of time, we tend to give it to another member to give it a second look.”
Li agrees, finding that communication between teammates is critical when puzzled on a specific problem. “We will discuss it with each other when we get stuck,” he said. “We’ll print out preliminary code if it’s a little ‘buggy’ and look through it. We’ll go over the ideas with pen and paper and, at the end of the day, there are pens and paper all over the place because we use a lot.”
In this intense battle of logic, mental endurance and speed, the Yale team relies on past competitions to prepare for the challenges ahead.
“The three of us did a lot of these competitions back in high school so we were able to draw on a lot of the similar experiences,” Li said. “There’s a lot of algorithms and data structures that can speed up solutions, but it would probably be way too slow for what [the judges] are looking for. We need to figure out which algorithms – which tricks – might speed things up and by doing enough problems it really gets you to have better intuition. So, we will be refreshing our coding and algorithms, running through a few rounds, and then continuing to communicate about our strategy.”
The team’s lasting success is especially remarkable since the achievements were completed in the students’ spare time. Many larger institutions provide professional coaches who are former competitors, dedicated to training their teams. The Yale team managed to best programming powerhouses Princeton, Columbia, Cornell, Rutgers, and NYU at the ICPC Regionals by training independently while managing other academic responsibilities and extracurricular activities.
“While I’m the coach of the team, the truth is I’m really just a cheerleader,” Piskac said. “All of the accomplishments the team has achieved has been in their free time and on their own. They are incredibly impressive and I’m pretty sure they don’t sleep,” she jokingly added.
The ICPC North America Championship takes place May 25-30 at the University of Central Florida and is sponsored by the U.S. Department of Defense, the National Security Agency, the National Security Innovation Network, and more. The top teams will advance to the ICPC World Finals, which will be held in Cairo, Egypt later this year.