University of Waterloo shines at the competition at 2023 ICPC North America Championship

Just as a trio of Waterloo coders had in 2021, a team of three Waterloo algorithmic programmers topped the competition at the 2023 International Collegiate Programming Contest North America Championship, held on May 29 at the University of Central Florida.

Waterloo overcame the competition, including trios of programmers from Stanford, Carnegie Mellon, MIT, Harvard and the University of Toronto.

The team, comprised of Ramazan Rakhmatullin, a master’s student studying combinatorics and optimization, Andrew Qi Tang, a third-year computer science and combinatorics and optimization student and Kevin Wan, a fourth-year computer science and combinatorics and optimization student, finished solidly in first place at the annual North America programming contest.

Kevin Wan, Ramazan Rakhmatullin, Andrew Qi Tang, and Computer Science professor Troy Vasiga

L-r: Kevin Wan, Ramazan Rakhmatullin, Andrew Qi Tang and Cheriton School of Computer Science professor Troy Vasiga celebrate their first-place win at the 2023 ICPC North America Championship hosted by the University of Central Florida. (Photo credit: Michael Roytek)

“We could not be more pleased with how well Ramazan, Andrew and Kevin performed,” said Cheriton School of Computer Science professor Troy Vasiga, who coached the team with his colleague, professor Ondřej Lhoták.

“Our coders not only solved 11 of the contest’s 13 problems — more than any other team — but they were the only team to solve three of the problems first among the 51 teams of programmers from universities across North America. As the top team at the North America competition, they are coming in strong to compete at the ICPC World Finals, which will be held in Sharm El-Sheikh, Egypt in November.”


The top teams listed according to their finishing results. See full results on the NAC ICPC virtual scoreboard.

The International Collegiate Programming Contest is the oldest, largest and most prestigious university-level algorithmic programming contest in the world. Each year, some 50,000 students from more than 3,000 universities across 111 countries compete in regional competitions to earn a spot at the World Finals.

Volunteer coaches prepare their teams with intense training and instruction in algorithms, programming and teamwork strategy. Huddled around a single computer, teams of three compete against each other to solve a dozen or so complex, real-world problems within a gruelling five-hour deadline. Teammates collaborate to rank the difficulty of the problems, deduce the requirements, design test beds and build software systems that solve the problems.

Across the various ICPC competitions, teams of three students represent their university in multiple levels of regional competition. Success at one level leads to an invitation to the next. Each region progresses differently, but the end result is the same — the best teams advance. The final regional contest determines the teams that advance to the ICPC World Finals.