When it comes to programming, students from the University of Chicago’s Department of Computer Science can hold their own. Each year, students have the opportunity to compete in teams of three in the International Collegiate Programming Competition (ICPC): the oldest, largest, and most prestigious programming competition in the world. During the regional portion of the competition last month, UChicago’s five in-person teams placed within the top 20 out of 97, with one team placing second overall.

The competition is hosted in three stages: regionals, nationals, and world finals. Each stage allows students five hours to solve a collection of complex, real-world algorithmic challenges that progressively get more difficult with each stage. The problems require a combination of persistence, strategy, and reasoning as well as the ability to solve quicker than the other teams. This year’s regionals were hosted at Purdue University Northwest.

“The basic structure of the contest is that you have between 10-15 algorithm problems, and you have to write a program that solves it,” said first-year PhD student and team coach, Ziyi Zhang. “You get the printout with all the descriptions of the problems, you code, and then submit your solution to a system test that tells you what you got right and if there were issues. You can see everyone’s score on a large scoreboard as others submit.”

Students solving problems

Ned Tagtmeier, an undergrad team from UChicago, had a rough start, but ultimately pushed through to take second place. Although they had done similar competitions in high school, this was only their second year competing together at the ICPC.

“We checked the leaderboard two hours in and we were placed 20th,” recalled third-year CS student, Ivan Galakhov. “We really had to dig deep for the last three hours.”

Usually the sites come equipped with common tools that allow competitors to test their programs locally. However, this year the tools needed to be installed manually, causing an unexpected bump in the team’s plans.

“Our team likes coding in C++,” said third-year team member, Derek Zhu. “There needs to be some sort of setup on the Linux terminal, and they need to have a client in C++ installed before the competition. It wasn’t done, so we had to manually install it on Windows. Kind of stressful, but we managed to get through it.”

The team credits Henry Cafaro, a second-year math and CS major, with helping them advance to the top, as he was the only person in the entire competition to solve one of the problems. The solution required almost 500 lines of implementation.

“It was definitely a lot of stress relief after the contest,” Cafaro said. “Over five hours, a lot of tension can build up. It felt nice to see the score and finally relax a bit.”

There were certain courses and faculty that the team also credited with their success. Foundationally, the team agreed it helped to take Data Structures and Theory of Algorithms. Galakhov tipped his hat specifically to classes with Professor László Babai.

“There’s definitely classes that help you with getting good at problem solving; math classes are especially good at that. I think one I would highlight is anything taught by László Babai. His classes are very interesting and focused on a specific type of problem solving that helps with this contest.”

The team will be headed to the North American Championship in Orlando, Florida at the end of May. Until then, they plan on practicing harder problems and working on more simulations that emulate the five hour competition. Typically, the hardest problems at regionals are the easiest at nationals. The team hopes to enjoy the experience regardless of what happens.

“Six days in Florida at the end of spring quarter is a good thing to have,” said Galakhov. “Even if we don’t go to the World Finals, we will get some vitamin D.”

Related News

More UChicago CS stories from this research area.

UChicago Team Wins The NIH Long COVID Computational Challenge

Jun 28, 2023

UChicago Assistant Professor Raul Castro Fernandez Receives 2023 ACM SIGMOD Test-of-Time Award

Jun 27, 2023

PhD Student Kevin Bryson Receives NSF Graduate Research Fellowship to Create Equitable Algorithmic Data Tools

Apr 14, 2023

Computer Science Displays Catch Attention at MSI’s Annual Robot Block Party

Apr 07, 2023

UChicago / School of the Art Institute Class Uses Art to Highlight Data Privacy Dangers

Apr 03, 2023

Postdoc Alum John Paparrizos Named ICDE Rising Star

Mar 15, 2023
Young students on computers

UChicago and NYU Research Team Finds Edtech Tools Could Pose Privacy Risks For Students

Feb 21, 2023
Garcia sitting in a jet engine

Student Spotlight: Gabi Garcia’s Bridge Between CS and Classics

Jan 30, 2023

UChicago Launches Transform Accelerator for Data Science & Emerging AI Startups

Jan 19, 2023
Two students looking at a wearable device

High School Students Find Their Place in Computing Through Wearables Workshop

Jan 13, 2023

Assistant Professor Robert Rand Receives Air Force Young Investigator Grant

Dec 19, 2022
Haifeng Xu

New CS and DSI Faculty Haifeng Xu Brings Strategic Intelligence to NeurIPS 2022

Nov 28, 2022
arrow-down-largearrow-left-largearrow-right-large-greyarrow-right-large-yellowarrow-right-largearrow-right-smallbutton-arrowclosedocumentfacebookfacet-arrow-down-whitefacet-arrow-downPage 1CheckedCheckedicon-apple-t5backgroundLayer 1icon-google-t5icon-office365-t5icon-outlook-t5backgroundLayer 1icon-outlookcom-t5backgroundLayer 1icon-yahoo-t5backgroundLayer 1internal-yellowinternalintranetlinkedinlinkoutpauseplaypresentationsearch-bluesearchshareslider-arrow-nextslider-arrow-prevtwittervideoyoutube