10 June 2015 – Team ThanQ+ (Jonathan Irvin Gunawan, CS, 2nd year; Nathan Azaria, CS, 2nd year; Vu Dinh Quang Dat, CS, 1st year) represented NUS in the ACM International Collegiate Programming Contest (ICPC) World Finals 2015 in Marrakech, Morocco, last month.

They matched the performance of last year’s team, ranking joint 28th (with a raw ranking of 33rd place). The organisers reported that ‘38,160 contestants, from 2,534 universities in 101 countries, competed in regional contests at over 459 sites worldwide’ to qualify, and of these, only 128 teams of three competed in this year’s World Finals. The contest allows some of the best university students from around the world an opportunity to come together, develop and test their problem-solving, strategic-thinking and collaborative skills.

According to Dr. Steven Halim, who coordinates NUS Computing’s competitive programming training programmes, within the first two hours of the contest, Nathan and Jonathan each solved two and three problems respectively. After the third hour, Nathan solved another, more difficult, problem. Dat Vu tackled the tedious problem M which required 300 lines of code as well as problem J that (they decided) necessitated the use of a rare algorithm called Fast Fourier Transform (FFT) that only Dat Vu was familiar with.

img 2993

Dat Vu describes the experience:

We did pretty well in the first two hours of contest as we had a long period of time in top 10. However, after that, we faced more difficulties solving problems. The other teams gradually rose above us.

With problem J (a problem that I tried but was not successful), after some discussion, we knew it could be solved by FFT and I started coding it. Because some key points about this algorithm were missing from our team notebook, my code did not run correctly. During the last 1.5 hours, I switched to working on problem M (which is a very tedious simulating problem). This kind of problem is very annoying that can result in a lot of very-hard-to-find bugs. From the 270th minute, I [continually] tried to submit and then fix bugs for this problem. And finally, 15 seconds before the end of the contest, my solution for this problem was ‘Accepted’.

To sum up, compared to my two friends, in terms of contributions, I did not do much. I think we could surely get rank higher and probably close to the medal (which is top 12) ranks if I did better in the contest. However, 33rd place (which is the same as NUS team in ICPC last year) still satisfied us because we know that in an international competition, there are a lot of strong teams and they are getting even stronger each year. This competition was certainly a good experience for me to perform better in the future.

Dr. Halim explained that if problem J’s bug had been found in time, ThanQ+ would have solved a total of eight problems instead of seven, and would have moved up in rank. Still, he was pleased with the result.  Only the team that placed first, St Petersburg National Research University of IT, Mechanics and Optics from Russia, managed to solve all 13 problems.

NUS Computing will be hosting the 2015 ACM ICPC Asia Singapore Regional from the 9th to 11th December this year. NUS Computing’s participation in and hosting of ICPC events this year has been generously supported by Garena.