World finals of collegiate computer programming await three Trojans in China

Pengda Xiang, Chenhui Zhu and Changyu Zhu, from left, will advance to the ACM ICPC world finals next year. (Photo/Southern California ACM International Collegiate Programming Contest)

Science/Technology

World finals of collegiate computer programming await three Trojans in China

If successful, they would be crowned the top team out of nearly 3,000 universities on six continents

December 08, 2017 Caitlin Dawson

Three USC computer science students are going to the Olympics — “the Olympics of computer programming,” to be precise.

The Trojans will compete in the Association for Computing Machinery’s International Collegiate Programming Contest at the 2018 world finals in Beijing in mid-April.

The USC Cardinal team qualified by winning the Southern California regional contest at Riverside Community College, where for the first time, a USC student team also scored second place in the competition held Nov. 11.

Founded in 1977, the International Collegiate Programming Contest is considered the largest and most prestigious programming contest in the world. This year, 104 teams from universities across Southern California and Nevada took part in the regional contest, including squads from UCLA, Caltech and the University of California, Irvine.

In all, four USC teams competed in the contest coached by USC Associate Professor David Kempe, computer science lecturer Michael Shindler and PhD candidate Ruixin Qiang.

This is a really strong result across the board, and I’m very proud of all our student teams.

David Kempe

The USC Cardinal team, made up of Pengda Xiang, Chenhui Zhu and Changyu Zhu, was the only team to solve all 10 given problems. In second place, USC Gold team members Justin Cheng, Sitan Gao and Yeji She solved nine problems. USC’s other two teams placed ninth and 27th.

Top teams from regional competitions advance to the final round, with the opportunity to go for gold on the world stage.

“This is a really strong result across the board, and I’m very proud of all our student teams,” Kempe said. “The winners are a very skilled team and I think we are in a strong position for the world finals.”

Battle of the brains

In these programming contests, teams of three university students have five hours and one computer to complete about 10 complex programming problems.

Teammates collaborate to quickly identify the easiest problems to tackle first, then devise clever algorithms to find solutions and swiftly debug errors — all while staying cool under pressure. The team that solves the most problems in the fewest attempts in the least cumulative time is declared the winner.

Teams in front of computers working together
The contest pits teams of three university students against the clock to complete 10 or more complex programming problems, with one computer and a grueling five-hour deadline. (Photo/Southern California ACM International Collegiate Programming Contest)

One of the questions from the regional involved a haiku: “A haiku is a three-line poem in which the first and third lines contain five syllables each, and the second line contains seven syllables.

“Write a program to examine a line pf English text and attempt to render it as a haiku.”

“It was a very intense but exciting experience,” said computer science freshman Changyu Zhu, a member of the winning team. His team’s mantra? Relax. Stay confident. Have fun.

“What really helped us succeed was good teamwork,” Zhu said. “You should do your favorite algorithms and let your teammates play to their strengths, too. And practice, practice, practice.”

While Southern California can send two teams to the world finals, contest rules do not allow two teams to enter from the same school — USC’s Cardinal team will join third-place regional finalists UC Irvine at the world competition. If successful, they will be crowned the top university team out of 2,948 universities from 103 countries on six continents.