Sunday, August 17, 2008

IOI Day 2: Opening Ceremony, Practice Session and Task Selection

Dear oh dear, the Egyptians really take African time way too seriously. The organisation to get into the venue for the opening ceremony this morning wasn't the greatest, but they definitely made up for it with the performances. The speeches were cut to a minimum, although we've been told they're holding them back for the closing ceremony where we'll have the president's son and expected future president give a speech amongst other top people in Egypt.

The speeches were followed by some Egyptian dancing, which was quite fascinating to watch especially with the dresses. We then had the world's most famous marimba player give a solo, which was pretty damn awesome! The crowd really cheered her on very nicely and it made the opening ceremony a memorable one.

Due to the delays they had to shift the practice session after lunch, which was made an hour early. Lunch was once again the big meal of the day (something I have yet to get used to). After lunch we hung around a bit more waiting to head over to the contest room for the practice contest.

The practice contest is always an interesting time as its the first time we get to see the contest environment. The handin and evaluation system has gone back to being a new system specifically developed for this event, something which I had hoped had died given the recent years. As expected with any new system there were problems and one major one was the networking issues they had. I'm not sure if related to the networking problems, but our team would get different feedback for different submissions of the same code! This was highly frustrating given that you couldn't trust the errors it spewed at you. There were a few other problems which I hope they'll sort out before the competition tomorrow.

I'm not sure where they bought them from, but look at what they're still using these:

The contest arena was separated into 13 rooms with about 8 teams per room, which is different to what I'm used to seeing in the past. We had the Spanish and Swedish team next to us and I had some interesting discussions with their leaders (two of whom I had previously met). The Swedish guys are hosting the ACM ICPC World Finals next year and I've been talking to them a bit about that. They claim that they're going to be putting on a real whopper of a World Finals, already have booked out three of their grande hotels! They're preparing to host the first World Finals with live commentary for spectators, streaming it over the Internet. Because of this they are also pushing to get automated judging, something which the judges are constantly resisting. Lets hope they can successfully outdo Shanghai, which would be really impressive.

After the practice session we had to rush over to our first GA meeting, leaving the contestants behind. The GA meetings can be rather amusing as they're highly democratic with voting on every minor point. They go as far as voting on the agenda of the meetings. This year started off no different to last year, with a couple issues raised. One was that the version of FPC used was unstable and the request was that they change the compiler flags from -O2 to -O1. However, as you can imagine this would cause countless problems in the uncertainty as they had tested the solutions using the exisitng -O2 flag.

After seeing the contestants for one last time we went to the second GA meeting where we were given the tasks for the first day of competition. Our job was to scrutinise the tasks and then translate them into our national languages. This is always a fun time as we get to discuss in detail with other team leaders the solutions to the tasks.

[This post was only published well into the start of the competition. The timestamp is the time of writing, not publishing.]

The first problem is really easy with only a small trick you have to notice, so I hope most of our team doesn't overlook this small trick and solves it successfully. The second problem is a tricky graph problem with lots of smaller parts that need to all work in linear time, which I haven't quite worked at a full solution to as I'm way too sleepy right now. The third problem is a really interesting task that stumped even the original author who submitted the problem with a quadratic solution in mind, but the scientific committee discovered an NlogN solution of which all I've heard is really icky. I'm sure I'll hear the solution soonish though. All-in-all a very nice problem set in my opinion.

So back to the task scrutinising. We had a couple minor issues with the task descriptions, but as we never considered them problematic enough for our team we never reported them. There was a total of ten minor and one major objection. The major objection was from the Croatian team that they had a similar problem to Islands in their national contest last year. The scientific committee said they were aware of this task and considered it significantly different enough to keep the task and everyone took their word for it without further question. Besides one minor objection, which I cannot remember, the others were all accepted. Then their was one guy who blurted out something minor about the Islands task that he wanted to be considered a major issue. Fortunately the voting process stepped in quickly which democratically calmed him down.

Once the tasks were accepted we moved onto translation. One advantage of coming from an English speaking country, however, is that we get to mingle with the other English speaking countries instead! It took a good while for them to bring in dinner and it arrived cold, as we have become so used to. I could have easily downed two of those meals, but many people had to wait for the second and even third batch to arrive so I never did.

Peter and I ended up spending most of the time, and yes it was a long time, chatting with the Brits and Troy. We kept wandering just when they'd let us leave, a major point of discussion in all years as we have to wait for the contestants to return from their activities and get back to their rooms so as not to meet with the leaders who have seen the tasks. We also have to wait for the tasks to be finalised, which thankfully has hasn't been a bottleneck so far this year.

After we got sick of debating on the Egyptian definition of "soon" I went to go have a talk with the Ghana and Nigerian leaders. We discussed some of the issues that they've been having in running their national contest to select their teams for the IOI. They sound very enthusiastic about getting involved and are even set on entering some teams into our ACM ICPC regional contest for Southern Africa with the eventual aim to break away and form their own West African regional. They're very eager and think they can get at least 6 countries from West Africa to participate and they definitely have a strong backing from the government. I talked to the about the African contest for university students I've been running and they were very excited to hear more about it.

Eventually at about 23:30 we were told we could leave, which was half an hour sooner than our original estimates so one point to the organisers! We all ran straight for our rooms after getting the word so the day was over.

Tomorrow is the first day of competition from 09:00-14:00 with an online contest scheduled to start at 17:00 (14:00 GMT) while us leaders attend day one of the IOI Conference. This is followed by a trip down the Nile river.


  1. Where should we register for the online contests?

  2. You can register for the online contest here:

    They are currently having issues with the registration emails as they appear to be blacklisted. They're working on a possible solution right now.