Being locked into a computer room together with a bunch of equally insane students, wildly plunking on a keyboard for five hours on a Saturday right before the exam period. That's the teasing offer the department for efficient algorithms at the TUM made for this year's Wintercontest. Apparently more than 50 students weren't able to refuse and came to compete.
I was one of these crazyminded students and I want to give a personal account of the event and explain why on earth it was, nevertheless, a good idea to come.
The day of the contest was a nice winter day with the sun lurking through the clouds and a cover of snow on the streets, pretty much as one would expect it for a Wintercontest. The organizers apparently did a good job there.
I came to the university by subway, which was almost empty except for other programmers. However, there were a few students at the university preparing for their upcoming exams. “These must be truly crazy people to come to the university on a Saturday”, I thought. At the contest site, I met my teammates, two fellow students I know from similar competitions. The Wintercontest is a team contest, you may participate as a team of up to three persons. To make it more interesting, every team may only use a single computer, which can be quite a challenging constraint for three programmers.
Except for such peculiarities, the contest actually is quite straightforward: a set of about ten programming problems is handed to each team and they have to design and code algorithms capable of solving those efficiently. Whether an algorithm is deemed correct or not is decided by a judging tool that will thoroughly test it for all kinds of input. If an algorithm is accepted, this will become visible on the public scoreboard and a balloon will be attached to the team's computer.
While on first sight this might appear more like a birthday party, the competition actually is dead serious. We were all going for the balloons. Although it was the first time we worked together as a team, the distribution of work went very smoothly. There was always one of us hacking away on the keyboard, while the rest of the team was thinking about approaches for the remaining tasks. As a result, we earned plenty of balloons and even had time to grab some food here and there. Of course, as is right and proper for programmers, we only relied on chips and pizza.
While we focused on the problems, time went by in a flash. After four hours, with one hour still to go, the scoreboard froze and no more balloons were handed out in order to create extra suspense: how many tasks will be solved in the remaining 60 minutes? How many more balloons will each team get when the contest is over? We gave it everything till the last minute. In order to push suspense to its limits, right before the end we even crashed our computer, which took several precious minutes to reboot. God only knows how many more problems we would have solved within this crucial time!
However, the contest finally came to an end. And based on the balloon count, we were quite successful. The organizers immediately started to prepare a presentation on the results, which they gave a few minutes later. They briefly outlined a solution for each of the problems and finally began to simulate the action on the scoreboard that had occurred within the last hour. Teams went up on the scoreboard as their solutions were judged correct and certificates were handed out as soon as final ranks were determined.
We received certificates as well, and after catching up with some more programmers and arguing about specific solutions, we proceeded to cars and subway station and finally dispersed on our way back into the city. But this was not the end, far from it: the Wintercontest is mainly a training contest aiming to prepare for the very similar German Collegiate Programming Contest (GCPC), which is taking place in early summer. And the GPCP is just training and qualification for the North West European Regional Contest (NWERC) next winter in Linköping, Sweden. And the NWERC is the qualification for the world finals of the International Collegiate Programming Contest (ICPC), which will take place at even more exotic places. We don't know how far we will succeed in this series. But now we are all geared up for it and we are certain: there are a lot more balloons waiting for us!
Author: Gregor Matl (Team #define true false)
rank | team | score | A | B | C | D | E | F | G | H | I | J | K | ||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | DoCtors Imperial College London | 11 | 1154 | 2/276 | 1/14 | 1/191 | 1/20 | 2/171 | 1/36 | 1/127 | 1/4 | 1/66 | 2/74 | 2/95 | |
2 | wehmuma Imperial College London | 10 | 1126 | 4 | 1/22 | 7/221 | 1/48 | 2/80 | 1/61 | 1/173 | 1/2 | 1/111 | 2/108 | 1/140 | |
3 | Old Fafhioned Typefetting FAU Erlangen | 10 | 1201 | 1 | 1/28 | 2/239 | 1/17 | 1/67 | 2/65 | 1/200 | 1/3 | 1/82 | 4/182 | 1/218 | |
4 | Y U NO ACK Imperial College London | 10 | 1262 | 0 | 1/33 | 1/226 | 1/44 | 3/97 | 1/59 | 2/271 | 1/5 | 1/112 | 2/182 | 1/153 | |
5 | Die Ösis TU Munich | 9 | 1297 | 0 | 1/30 | 0 | 1/95 | 1/173 | 2/141 | 1/295 | 1/6 | 1/121 | 1/200 | 1/216 | |
6 | Quantum Quoders KTH Stockholm | 9 | 1355 | 0 | 1/28 | 0 | 1/40 | 1/107 | 4/201 | 1/280 | 1/5 | 1/125 | 1/295 | 1/214 | |
7 | FAU-Mann FAU Erlangen | 8 | 818 | 0 | 1/19 | 0 | 1/40 | 2/118 | 1/70 | 1/211 | 1/9 | 1/90 | 0 | 1/241 | |
8 | MCR Geldschrank-Vertriebs GmbH FAU Erlangen | 8 | 1070 | 0 | 1/46 | 2/265 | 1/118 | 1/120 | 1/152 | 0 | 1/11 | 1/67 | 0 | 1/271 | |
9 | #define true false TU Munich | 8 | 1270 | 0 | 3/92 | 0 | 1/121 | 3/58 | 10 | 1/242 | 1/8 | 2/206 | 2/186 | 1/237 | |
10 | ,[.[-],] FAU Erlangen | 7 | 857 | 0 | 3/52 | 0 | 1/55 | 1/162 | 1/199 | 0 | 1/4 | 1/132 | 0 | 3/173 | |
11 | Polyzei-t FAU Erlangen | 7 | 872 | 0 | 1/37 | 5 | 1/123 | 2/78 | 4/215 | 0 | 1/9 | 1/103 | 0 | 1/227 | |
12 | Code Ninjas II Imperial College London | 7 | 882 | 0 | 1/26 | 0 | 1/82 | 2/119 | 2/213 | 0 | 1/6 | 1/130 | 0 | 2/246 | |
13 | O(Baby) Imperial College London | 7 | 910 | 0 | 1/30 | 1 | 1/23 | 1/174 | 3/270 | 1/249 | 1/4 | 1/120 | 0 | 0 | |
14 | Inspirationless Imperial College London | 6 | 933 | 0 | 1/29 | 3/174 | 1/147 | 3 | 10/260 | 0 | 1/4 | 1/99 | 0 | 0 | |
15 | The geek cave FAU Erlangen | 6 | 937 | 0 | 1/17 | 2 | 5/68 | 1/242 | 0 | 0 | 1/5 | 1/236 | 0 | 3/249 | |
16 | GCD' Imperial College London | 6 | 949 | 0 | 2/52 | 4 | 3/146 | 2/221 | 2/137 | 0 | 1/7 | 2/266 | 0 | 0 | |
17 | #define true false TU Munich | 6 | 983 | 0 | 3/129 | 0 | 3/46 | 1/197 | 2 | 1/264 | 2/34 | 1/213 | 1 | 0 | |
18 | Naming is NP-Complete Imperial College London | 6 | 1034 | 0 | 3/61 | 5/298 | 1/100 | 1/234 | 0 | 0 | 1/26 | 1/195 | 0 | 2 | |
19 | ');drop table team;-- FAU Erlangen | 5 | 496 | 0 | 1/23 | 1 | 2/65 | 3/181 | 2 | 0 | 1/8 | 2/139 | 0 | 0 | |
20 | GAU02 GAU Goettingen | 5 | 511 | 0 | 2/36 | 0 | 1/70 | 2/268 | 1 | 0 | 1/5 | 1/92 | 0 | 0 | |
21 | 3 FAUeste... FAU Erlangen | 5 | 533 | 0 | 2/52 | 0 | 1/78 | 1/136 | 0 | 0 | 1/20 | 1/227 | 0 | 0 | |
22 | Only DOM Can Judge Us TU Munich | 5 | 668 | 0 | 1/75 | 0 | 1/112 | 1/266 | 5 | 0 | 1/14 | 1/201 | 0 | 0 | |
23 | les chamans TU Munich | 5 | 688 | 2 | 1/17 | 1 | 5/142 | 2/199 | 0 | 1 | 1/6 | 5 | 0 | 1/224 | |
24 | GAU03 GAU Goettingen | 5 | 718 | 0 | 3/83 | 1 | 1/171 | 4 | 0 | 0 | 1/22 | 1/192 | 0 | 1/210 | |
25 | What daFAUq? FAU Erlangen | 5 | 775 | 0 | 2/79 | 0 | 3/209 | 1/193 | 0 | 0 | 1/6 | 5/148 | 1 | 0 | |
26 | Mutant Mass TU Munich | 5 | 877 | 0 | 2/85 | 0 | 3/118 | 5/267 | 0 | 0 | 1/18 | 1/249 | 0 | 0 | |
27 | We are here for the balloons Imperial College London | 4 | 245 | 0 | 1/47 | 0 | 1/66 | 4 | 0 | 0 | 1/13 | 1/119 | 2 | 0 | |
28 | The Gaussians GAU Goettingen | 4 | 432 | 1 | 1/24 | 0 | 0 | 1/215 | 4 | 0 | 1/12 | 1/181 | 0 | 0 | |
29 | WeGuessItIsOurFAUltException FAU Erlangen | 4 | 474 | 0 | 1/108 | 1 | 1/150 | 2 | 0 | 0 | 1/5 | 1/211 | 0 | 0 | |
30 | FAU den letzten Drücker FAU Erlangen | 4 | 491 | 0 | 1/85 | 0 | 1/143 | 0 | 0 | 0 | 1/23 | 2/220 | 0 | 0 | |
31 | ourLevel.get() FAU Erlangen | 4 | 595 | 0 | 2/32 | 0 | 4 | 0 | 0 | 0 | 1/7 | 2/165 | 0 | 4/291 | |
32 | Infinite loop FAU Erlangen | 4 | 598 | 0 | 1/110 | 0 | 1/86 | 0 | 0 | 0 | 3/89 | 2 | 2 | 1/273 | |
33 | WirBrauchenNochEinPaarPunkte TU Munich | 4 | 663 | 0 | 4/82 | 0 | 0 | 2/267 | 1 | 0 | 1/12 | 1/222 | 0 | 0 | |
34 | NullPointerException FAU Erlangen | 4 | 666 | 0 | 3/78 | 0 | 0 | 0 | 0 | 0 | 2/29 | 2/274 | 0 | 2/185 | |
35 | Dr3ierkomplement FAU Erlangen | 4 | 685 | 0 | 1/164 | 0 | 4/257 | 1 | 0 | 0 | 1/8 | 1/196 | 0 | 0 | |
36 | ICL17 Imperial College London | 3 | 185 | 0 | 1/102 | 0 | 1/75 | 0 | 3 | 0 | 1/8 | 0 | 3 | 0 | |
37 | Fulham Broadway Batki - FBB Imperial College London | 3 | 192 | 0 | 1/29 | 0 | 1/146 | 0 | 0 | 0 | 1/17 | 3 | 0 | 0 | |
38 | noIdeaWhatWeAreDoing FAU Erlangen | 3 | 247 | 0 | 1/74 | 0 | 2 | 0 | 0 | 0 | 1/31 | 1/142 | 0 | 0 | |
39 | DenkFAUl FAU Erlangen | 3 | 293 | 1 | 1/28 | 0 | 0 | 4/118 | 0 | 0 | 2/67 | 0 | 0 | 0 | |
40 | yek Imperial College London | 3 | 330 | 0 | 1/34 | 0 | 0 | 2 | 0 | 0 | 1/13 | 3/243 | 0 | 0 | |
41 | Forteka TU Munich | 3 | 384 | 0 | 1/69 | 0 | 1/296 | 3 | 0 | 0 | 1/19 | 0 | 0 | 0 | |
42 | _underscore FAU Erlangen | 3 | 400 | 0 | 3/92 | 0 | 7 | 0 | 2 | 0 | 1/9 | 0 | 0 | 3/219 | |
43 | FoodForFun TU Munich | 3 | 455 | 0 | 5/66 | 0 | 3 | 0 | 0 | 0 | 2/12 | 1/277 | 0 | 0 | |
44 | I have no printf and I must scream TU Munich | 3 | 475 | 0 | 2/92 | 0 | 4/295 | 0 | 0 | 0 | 1/8 | 0 | 0 | 2 | |
45 | TUMInternational TU Munich | 3 | 480 | 0 | 2/136 | 0 | 4/257 | 3 | 0 | 0 | 1/7 | 0 | 0 | 0 | |
46 | Sars TU Munich | 3 | 492 | 0 | 1/160 | 0 | 1 | 0 | 0 | 0 | 1/125 | 1/207 | 1 | 0 | |
47 | Die Aufgabe ist im Grunde genommen gelöst! FAU Erlangen | 3 | 529 | 1 | 5/97 | 0 | 0 | 2 | 1 | 0 | 1/11 | 1 | 0 | 5/261 | |
48 | Mikrowelle, Skalarwelle FAU Erlangen | 3 | 571 | 0 | 2/247 | 1 | 1/157 | 0 | 0 | 0 | 2/127 | 0 | 0 | 0 | |
49 | CodeMonkeys TU Munich | 2 | 48 | 0 | 1/37 | 1 | 0 | 0 | 0 | 0 | 1/11 | 0 | 0 | 0 | |
50 | HAW01 HAW Landshut | 2 | 190 | 0 | 2/117 | 0 | 0 | 0 | 0 | 0 | 2/33 | 0 | 0 | 0 | |
51 | Super Best Friends FAU Erlangen | 2 | 300 | 0 | 43 | 0 | 0 | 0 | 0 | 0 | 2/13 | 0 | 6 | 1/267 | |
52 | Kuchenblechmafia FAU Erlangen | 2 | 328 | 0 | 4/234 | 0 | 0 | 0 | 0 | 0 | 1/34 | 0 | 0 | 0 | |
53 | stdout TU Munich | 2 | 399 | 1 | 2/243 | 1 | 0 | 1 | 1 | 1 | 1/136 | 1 | 4 | 1 | |
54 | 360noStroke(); FAU Erlangen | 2 | 407 | 0 | 3 | 7 | 0 | 4 | 0 | 0 | 3/96 | 2/251 | 0 | 0 | |
55 | The Turing Testers Imperial College London | 2 | 536 | 0 | 6/291 | 0 | 4 | 3 | 0 | 0 | 2/125 | 0 | 0 | 0 | |
56 | inFinity And beyUnd FAU Erlangen | 1 | 9 | 0 | 3 | 0 | 0 | 4 | 0 | 0 | 1/9 | 0 | 0 | 0 | |
57 | Az Az Kaboria TU Munich | 1 | 12 | 0 | 17 | 0 | 0 | 0 | 0 | 0 | 1/12 | 0 | 0 | 0 | |
58 | return_0 TU Munich | 1 | 21 | 0 | 5 | 0 | 0 | 0 | 0 | 0 | 1/21 | 0 | 0 | 0 | |
59 | Nerd Fiction FAU Erlangen | 1 | 99 | 0 | 2 | 0 | 0 | 0 | 0 | 0 | 1/99 | 0 | 0 | 0 | |
60 | heisenbugs TU Munich | 1 | 117 | 0 | 5 | 0 | 0 | 0 | 0 | 0 | 1/117 | 0 | 0 | 0 |