Tuesday, August 17, 2010

Competition Day 1

So today we had our first competition day. It was sad. I unfortunately had trouble sleeping, and the exam didn't go as well as I had hoped, partly due to me failing and also the difference in what I had expected and the actual tasks on the day.

Apart from that, today was quite fun. I spent a while playing Mao and the Hat game, all which was quite fun. We also spent some good time outside, which hopefully will help me sleep tonight.

I'm really tired right now, so I'm going to go to sleep.

Monday, August 16, 2010

Video streams from the back room

There are also live video feeds from the room of the Scientific Committee, complete with amusing commentary. Head over to http://www.justin.tv/ioi2010.

Day 1 live scoreboard

With the practice round just over, tomorrow morning here will see the first day of competition begin. This will start around 8:30pm Monday night in Perth or 10:30pm Monday night on the East coast. The live scoreboard will be here. The contest will run for 5 hours into the dark of the night for .au. We're told that the live scoreboard is only a guide and may cease updating at any time.

Apparently anyone can play at home too with nothing but your brains and a mouse. See here for more detail.

And here's an action shot from today's practice contest! (just don't look too closely...)

Day 1 - Opening ceremony

So today was the first official day of the IOI. I began the day by waking up to a nuclear siren going off, our alarm for the next 7 days. After recovering from the shock, and having a quick shower where privacy comes after economy, me and Evgeny went to the breakfast hall and had breakfast with the English. We then met Bernard while heading back to our rooms, who instructed us to wake the others up and get them dressed in their blazers, so that we could catch a bus instead of walking. We decided to neglect the detail that there was multiple buses, so Kenneth and Robert had fun rushing up to breakfast only to find that there was no real need.

The opening ceremony itself was quite good. They began by having a Canadian Celtic band play, who were quite good. Then they replaced it with multiple people welcoming us to the IOI in different languages, and finally the main organiser, Troy, spoke for a while about the importance of this in our lives. Then a trick/comedy duo performed, which was slightly entertaining, but clearly pitched to a different audience. After this, we were entertained by cheerleaders, which again was quite awkward and we the audience did not appreciate maybe as much as others would have. Finally, a boy archipelago group sang several songs, which was easy to listen to.

After the ceremony, Robert was interviewed by Canada National Television, and showed his true bogan side to them. We also got Peter Taylor, the head of AMT, to have an intimate time with the cheerleaders, as can be seen in some of the photos. After this, we headed back to the university, for lunch and the practise session.

For lunch, the queue was incredibly long, meaning we were almost late to the practise session. In the session, we played tetris and minesweeper, printed off documents with the text "Please hand to the hottest guy in the room". The problems presented we had all seen before, meaning me and Evgeny got off to a perfect start to the IOI, hopefully a good sign for tomorrow.

After the problem session, we went and had some dinner as we were all incredibly tired, and so afterwards played a bit of Bartog before meeting with Bernard to discuss the final changes before the leaders went into quarantine. During this the Internet was shut down, which is why this is posted the day after it had all happened.

Sunday, August 15, 2010

First day at the IOI

The first day at the IOI has been amazing. The people, the place and of course the swag have been great. Our guide is very nice and everything seems extremely organised.

We left for Waterloo University from the Waterloo Inn at 9:30, I was quite surprised at how short the trip was. On our arrival we met our friendly guide Vanessa who gave us a tour of the campus and our college.

The food here is edible, but still it's the IOI so everything is by definition awesome.

An introduction to the IOI

So today we finally were at the actual place where we would be competing, sleeping and eating for the next 8 days. After waking up at around 7am, and feeling really tired, I managed to have some nice pancakes with maple syrup, apparently a Canadian special. We then packed our stuff, and boarded a bus which would take us to the university campus.

After arriving there, we were all pretty excited and ready to be, as Jarrah challenged us 'sociable', a somewhat foreign concept to us. We managed to meet a nice Belgium guy, who we spent a while talking to, and when we went on a tour of the campus he came along as well. By this time, the already moderately warm day had turned quite hot, and was quickly becoming very humid. After spending an hour walking around, we were all very sweaty and after quickly eating lunch, went to our rooms to change.

After eating lunch, we decided to fulfill Jarrah's challenge by bringing some cards up to the lunch tables and playing Bartog, an interesting game which encourages memory, logic and speed, all things that an information would need, thus explaining its part in the Australian selection process. After getting bored of that, we went exploring in search of a candy shop, and while on the way Evgeny decided to climb a pole, chase a squirrel and climb trees. While on the way we found the Macedonians and the English, both who we had interesting discussions with. After heading back to socialise again, we had dinner and went to a welcoming party.

The welcoming party was fun, meeting the French, Irish and a news reporter. We soon left though, to go play Bartog and the hat game with the New Zealanders and Irish, and after getting too tired, going to sleep.

Friday the thirteenth

I haven't blogged since Thursday, so here it goes.

Friday 13th
Uhh... yeah...
Was woken up by Bernard at about 6 AM. Nothing notable happened, apart from I think Robert losing his shoes somewhere in my room. Don't know how that happened.

I don't remember most of the 20 hour long flights, so I will omit that boring part. That said, planes are loud and impossible to sleep in. We have arrived at Toronto at something like 6PM, making it a (not-so-) great 36-hour long Friday.

Ran into the Russian team in Waterloo Inn, and Australians made me act as a translator for them.

Saturday 14th

Quote of the day: "But I don't have dyslexica... oh wait..."

Arrived to Waterloo University :D We played Bartog several times during the day. Found the kiwi team, pom team, american team, french team, irish team, something team, etc.

We also had a party that was meant for us to socialise, but we ended up talking in our own social circles. And Kolstad was bagging out that kind of behaviour, which was amusing to listen to :D

Some reporter for Wired took an interview, so we're now famous (need those medals!).

Day 0 is tomorrow, as well as the opening ceremony. Looking forward to spending several hours in a humid, hot hall in a blazer and pants.

Saturday, August 14, 2010

First day in Canada

(Disclaimer: I am writing this after 40 hours of only getting 2 hours sleep, and slightly jet lagged, so please excuse all bad grammar/spelling)

So today/yesterday we left for Canada, waking up at 6:00 (Or 6:20 with Bernard frantically knocking on our door), and had a quick breakfast before catching cabs to the airport. Once there, we began the long process of checking in, getting past security and boarding the flight, all which took us right up to taking off. We quickly found out that this airline (Qantas), does not provide battle tetris, and so much disappointment was had. After getting over this, I watched some great movies, like Shrek 4, Greenzone, Iron man 2 ect. After realising that it was early in the morning Canadian time, I attempted to go to sleep.

Sleeping on planes is an interesting thing. On one hand, there is an incredible amount of noise, which hinders you actually falling asleep. On the other, after successfully dozing off, you will often wake up feeling stiff, dehydrated and incredibly cramped. All of these led to me only getting about 2 hours in total.

After waking up, and watching more TV and movies, we arrived at Los Angeles. The security there was immense, with all of us getting our fingerprints taken and taking our shoes off for the scan. Although this was bad, I was quite excited to be in a foreign country, and this woke me up enough for the next flight.

The actual trip from the US to Canadia is a bit of a blur. I remember dozing off a bit, but managed to mostly keep myself awake for the trip. We then arrived in Canada, went through its security and caught a bus to our hotel.

After dumping our bags, we went to a Canadian restaurant, which served a variety of dishes. I got a Thai red curry, while others got lasaga, burgers and fish and chips. This was quite a nice dinner, but by the end I was immensely tired and ready to go to bed (after writing this blog post).

On a side note, this was the longest Friday the 13th I've ever experienced.

Longest Friday 13th ever

Departures day... After some heavy door knocking 20 minutes after everyone was supposed to be awake, most of the team finally fell out of bed. That was almost 30 hours ago now on Friday the 13th, and there is still another hour until Friday the 13th comes to an end. It wasn't terribly unlucky though, except for Robert who somehow lost his shoes between Evgeny's room and the breakfast table...


Shoes recovered, we flew seamlessly to LAX about 16 hours later, where the team attempted to put on their best warrior faces.


After a brief lunch at some very American food chains and a fantastic game of Bartog (a first for the trip, surprisingly!), we proceeded on our way to Toronto. At this point, most of us had gone without internet for longer than we'd ever had since we were born. The toll this was taking on the team was evident on the flight as Luke struggled to stay awake, Evgeny spent 3 hours in the brace position, Kenneth crashed, and Robert examined the effects of the plane's banking on gravity.

We were all drained after such long flights and having been disconnected from the world for so long. Many queues and waits later at Toronto airport, an unexpected saviour cheered up the team - its effect appearing to surpass that of caffeine or any energy drink known to man. We found free internet!


The drive from the airport to Waterloo let us watch a marvelous Canadian sunset slide away over the landscape, hopefully setting our bodyclocks back into kilter. A delightful dinner finished the longest Friday 13th ever, with eight thumbs up. Ginger & pear juice... yum!

Living the dream

Back in 2008 I found the Australian informatics Olympiad on the Australian mathematics trust’s website, and inevitably came to the section about that year’s IOI team. I was astounded and amazed that there was a way for programming to get me overseas representing Australia. Then I saw an IOI problem. Needless to say, it was quite problematic and I had no way of solving it. I wasn’t sure that I would ever be able to solve it. After that I placed the kids that went to an IOI up on a seemingly unreachable perch.


Last year my maths teacher chanced across me mentioning the maths olympiad, that prompted him to dig up a letter asking the school for entries in the Australian Informatics Olympiad (AIO). At that stage I only knew the programming language python, so it was quite fortunate that 2009 was the first year that python was accepted as a language.


Since it was my first informatics competition I assumed that I would go quite poorly, so I read the results from bottom to top. I quickly realised that I hadn’t gotten a bronze, that got my hopes up for a silver, It then struck me that I hadn’t gotten a silver either. I wasn’t hopeful of getting a gold, and I almost stopped reading halfway through gold. So when I saw that I game second, and by two points no less, to someone that had done extremely well last year, I was overjoyed, this was compounded by being invited to the December informatics camp at the ANU.


The months in the lead up to the camp were spend learning C++ (another programming language) and solving problems on the Australian informatics training website. After many sleepless nights problems started to get progressively easier.


The December camp was amazing, I had never been surrounded by so many people that were shared the same interests! It was amazing and wonderful and incredible and it was over in 10 days. I really only came down from the high the AIO gave me on the plane home.


Everyone from the camp was invited to sit the Australian Invitational Informatics Olympiad and the French Australian Regional Informatics Olympiad. My results from these secured me an invitation to the IOI team selection camp that April. This was another incredible event, since this camp meant I was only one step off an IOI. Quite openly, I didn’t like my chances of making it this year, the words “Quit while I’m ahead” jokingly crossed my lips on more than one occasion.


I slept really well the night before the first selection exam, I mean, I didn’t expect to do that well, so there was no stress. Almost unfortunately, day one went very well, so the pressure was on for the second day. In the second exam I got the first three questions out fairly promptly, but I feared that my solution for the fourth and final question was going to be too slow. It occurred to me that this question may be all that was standing between me and an IOI. So I put my head down and nutted out the solution that was fast enough.


The wait after selection exam two was possibly the most stress I have ever endured, I had gotten out all the questions, but there was a lingering thought that I must have made some small error that would cost me dearly. Tradition dictates that the process for revealing the team is as strenuous as possible, while the team is being decided all the students are locked in a room together. Once the team has been decided the students play cards to choose the order for people to leave the room and find out if they have been selected or not. It didn’t help my mental health in the slightest that I was the third last one out.


Walking up the stairs to where Bernard and Jarrah were I was so nervous that I was shaking, when they offered me a place on the team I continued to shake. It didn’t hit me that I would be going off to Canada in a few months.


Sitting on the plane to Los Angeles It’s kind of dawning on me that I’m on my way to an IOI. The people surrounding me have won 6 IOI medals between them, and I hope to join their ranks soon.


Sitting on this plane to Los Angeles I’m living my impossible dream.

Thursday, August 12, 2010

The inclusive group of exclusivity

The last day in Australia started with me waking up way too early. I didn't realise we had a late start of 9AM, as opposed to the usual 0830. The exam was altered to be slightly shorter, 4 hours long, with only 3 questions.

The first one was tricky to implement, it took me roughly 3 submissions before realising that my maths was horribly broken (I cannot add numbers manually). This kind of error happened to me quite a few times this week, actually. Spending the remaining 3 hours on 2 questions, I think I arrived to some kind of a solution, but it ended up being more tricky that expected.

The free afternoon was uneventful, and doing the exam questions made it even more so. We had Emanuel kids come over, with Rafi being exceedingly loud.

Leaving for Canadia (haha Luke) tomorrow, going to sleep now.

So today was simply amazing. That is all.

The exam was shorter than normal, to accommodate people going home to get their bags. So instead of the usual 4 questions 5 hours, it was 3 questions 4 hours. I'm quite satisfied with my performance, hopefully this has been enough prep for the IOI.

The free afternoon was AMAZING, this cannot be stressed enough. I met up with some people I knew from hs1917 and we spent the afternoon/night having insane amounts of fun. Also I picked up my team mascot, aptly named Anarchy.


Dinner too was amazing, the other hs1917 kids came along, and it was fun and everything was just simply incredible.
Also the thai was a bit hot for me, but I'm disregarding that because of how amazingly awesomely optimal the rest of the day was.

Yours Sincerely,
Robert Newey.

Last day in Australia

So today was the last full day before we left for the IOI. After a refreshing night's sleep, and another early breakfast, I felt ready to tackle the problems that would be given to us in our trial exam. We had a bit of a difficulty to begin, as the room we originally had planned to sit it in was booked (this was a room that had the air conditioning "accidentally" set to 29 degrees, getting us used to Canadian temperatures), and so we quickly dashed to another lab.

The first problem I tackled was the full feedback one (you could check what you scored for it immediately), and I quickly observed the necessary solution. After a couple of 'huh?' moments after not getting 100%, followed by realising a crucial bug that was screwing it up, I finished it and looked at the next, a much harder one. This time, I was unable to think of the solution immediately, and so only partially solved it before the exam had ended.

Again, this was slightly depressing, but I drew confidence from the fact Evgeny and Kenneth scored close to what I did, indicating that it was very hard. We then went and had lunch, and this time I got some not particularly noteworthy fried rice. Then Evgeny, Kenneth and I headed back to the rooms, with them intending to stay there while I went home to back my bag fully.

The trip home was not particularly eventful, as I have done similar trips before, but killed 3 hours. After arriving back and quickly dumping my new bag, I turned around and was quite shocked to find the mirror of our room drawed on in whiteboard markers. Evgeny, when I showed him it, realised the possibility it presented for doing informatics and so we went into his room for a impromptu problem session.

The rest of the day consisted of dinner at a Thai place, which ended up with all of us getting curries and Kenneth getting a phobia of glasses being knocked over. After this, we went back to our rooms, leaving time for us to pack and go to bed early for the big day tomorrow.

Still alive

So this post is going to be the post that was meant to go up several hours ago when the Internet connection I'm working off was offline.

Finally managed to wake up at the planned time of 7:10 today. The hope is that I'd be able to wake myself up properly and get breakfast finished before at least one other person so I stop being the reason we go to the labs late. After having seen everyone else regularly buy the pancakes and appear to enjoy them, I tried the same. Unfortunately, I was wise enough to try and spend precisely $25, I ordered fried eggs too and couldn't finish it in a reasonable amount of time, holding back everyone and yet again being the reason we got to the labs late.

Yet another practice paper (the third, if my counting ability doesn't fail me). In my opinion, this exam was harder than yesterday's, not only because I didn't do terribly well, but also because trying to understand the solutions to two of the three harder problems takes a fair while longer than yesterday's exam. The full feedback problem was certainly more difficult than the usual full feedback problems that I've grown used to. Most of the time, the full feedback problem requires some reasonably trivial algorithm to be implemented, not needing too much thought to go into arriving at an algorithm that solves the task (since feedback is usually to assist competitors produce codes with less errors, rather than assist competitors in solving the task on an algorithmic level). Though in terms of the algorithm, today's full feedback task wasn't as too mentally taxing, it had quite a few gotchas that took a while to figure out. Given that the task is full feedback, one would know upon submission that they didn't submit a correct solution and take a while longer than usual to solve what should be an easy problem [taking away precious time to work on more difficult tasks]. That leads on to the other tasks, which had me quite entirely stumped for a long time. Jarrah mentioned how we were going to hate ourselves during the problem session, and for good reason too.

Having collectively discussed the solutions to the problems that had completely confused us only a few hours before, we quickly arrived at an incredibly simple solution to one of harder tasks. Not only was the solution ridiculously simple, but the line of logic that we had to follow was quite obvious once a small observation has been made. Then again, that ability to make the small observations is what differs the good informaticians from the extraordinary informaticians. The other two of the more difficult tasks required less epiphanies and more deep thought and number crunching. This is the kind of deep thought and number crunching that would have the entire team sitting at a table for extended periods of silent meditation that would be interrupted by a magnificent eruption of discussion, shortly followed by further silence. In the end, we came up with an algorithm for solving one of the two unsolved tasks (albeit deeply confusing and lacking an elegant proof) and a questionable solution to the last one (questionable in that it makes sense and should be algorithmically correct, but implementation-wise is a little half-baked).

After the extended problem session (which [since I haven't explained it anywhere else yet] is a session where we all sit down and discuss ideas and potential solutions to problems that were in the day's exam [or any exam for that matter]), we went down to the labs for a shortened lab session (which is where we implement/code the solutions that we discussed in the problem session), where I managed to code up the solution to the task that required an epiphany. I had a stab at the deeply confusing task, but didn't have enough time to finish ironing out the errors.

Butter chicken for dinner (and kebab for lunch). Good stuff with rice. Table conversation was good; we talked about topics such as the ISSC (International Schools' Software Competition), binary search, the expected number of rolls of a dice required to get a number that isn't 6, and whether or not it was possible to make a proper random number generator (i.e. one that has a perfectly equal chance of getting each of its possible values), given a random number generator that gives random numbers of a different range (so something like "given a perfectly random die, create a series of steps that utilises the die to generate a random number between 1 and 5 inclusive" [a la the previously mentioned topic). Truly riveting material.

After dinner, we went back into our rooms, with everyone going to sleep much earlier than usual. Since the Internet connection was offline during this time (which probably explains the early sleeping times), I didn't have a chance to write up this blog post at the time. Instead I thought it would be fun to implement that solution to the minesweeper problem that I so fondly proclaimed in my last post. By the time it was 1am, I had gotten so irritatingly close to a completed solution, but stopped when I realised I was keeping Evgeny awake with the light, loud typing and the TV that I had on for background entertainment so I put it off till a later time.

So as far as I can remember, that was all that happened yesterday. With regards to this particular post, I have a strong feeling that I was being heavily distracted earlier on in the post by a TV, so much of it may not make as much (or any) sense. I'd proofread it, but it probably makes a more interesting read for everyone if I don't.

Flying soon.

-ken

Too lazy to blog

I've been unable to blog for the past 2 days due to my extreme devotion to doing informatics (and scoring 10% or less and not knowing why). In the last 2 days, nothing extraordinary has happened. Here's a recount of the last 2 days.

August 10

Got up at 06:30, which is kind of early, even without considering the time I sleep. Re-filled my supply of Mothers (we have a fridge in the room :D), and spent about 5 minutes looking for my breakfast vouchers. My bag has too many compartments for it to be usable.

Yesterday night, we raided Coles and got about 1-1.5kg worth of bread, sweets and chocolate. The prices are much, much lower than in restaurants (obviously), with our last night's dinner buying roughly 70 Coles pineapples.

Breakfast: spot breakfast roll (too hot for my liking, the Tabasco sauce got squeezed into one third of the baguette while I was eating it), ricotta pancakes and a cappuccino with coke. With 30 minutes left until the exam, Kenneth is still waiting for his order.

Sat the exam. Everyone is sad. Bought food, forgot to ask for receipts to give to Bernard, who isn't happy about that. Problem session. The exam problems were fun once you know how to solve them. Highest score: 185/400.

Had dinner at the Italian pizza place with the funny waiter guy.

August 11

Another exam, this time with a slightly harder set of problems. In the problem sessions, we got told how easy some of them were.

Met Richard, who believed the Google hoax and went as far as considering negotiating with them to let me finish the HSC. Oops. Went to sleep early after scoring another 0 :D

The curious case of the falling cups

Wow, I can't even begin to describe how fast this week has passed. I have the most peculiar feeling at the moment. It's not the feeling that leads one to say "it remember it as though it happened yesterday", because that kind of recollection is reserved for the previous 5 minutes at any given present point in time. It sure has been a fun training week, but in a way I guess the excitement has only started, since we're going to by flying off tomorrow morning (or rather, in a little under 11 hours) which will be my first trip to anywhere near America. [random sidenote: we just finished watching one of those aircraft disaster shows, which doesn't really help]. Today was a nice final day to have in Sydney for the next week or so.

Today's plan to wake up at 7:10 went off without any problems, but getting out of bed before 7:15 ended up with me getting out of bed at 7:40 and rushing down to breakfast at around 7:45. I got down to see Bernard and Evgeny eating breakfast with Luke and Robert nowhere to be seen. Apparently they had already eaten and left, and then it turned out that Bernard and Evgeny were just screwing with me. Somewhat relieved, I aimed a little higher and ordered the "Big Brekkie" that I had ordered on the first day [which had originally caused me to take a path down to the CSE labs that was at least 4 times longer than it had to be], hoping that I would finally stop forcing everyone to wait for me while I shoved food down my throat. In the end, I had to go back up to my netbook in anticipation of today's free afternoon (during which I wrote my previous post) and ended up holding everyone up again. During breakfast, we gave our orders for tomorrow's breakfast [which has to be early since we need to be packed and gone by around 7:30]. It turns out that we needed to be awake at around 6:30 to eat breakfast and check out in time. This is going to hurt.

A slightly different practice exam today. Instead of the normal 4 problems in 5 hours, we had 3 problems in 4. This time the full feedback task was a little harder to solve algorithmically than yesterday's, but during our conversation at last night's dinner we had talked a fair bit about how binary search based algorithms work and how we can get caught out when utilising a binary search. On some level, it probably helped since binary search ended up coming across my mind earlier on [which was helpful because the solution involves binary search]. After a couple errors got ironed out, I managed to submit for the full feedback task and get 100% for it. Of the remaining two problems, I got a sudden strong wiff with one particular one (which I'll refer to as task 2), though I saw a solution to the other (task 3) that would score a definite 50%. After a good two and a half hours or so of thinking, I felt as though I might as well shoot for incomplete solutions that would score well. This being said, I felt as though I had a solution to task 2 that would score 100%, except for a small algorithmic requirement for which I could find no answer. Since I thought I would be able to code up the 30% solution to task 2 much faster, hopefully leaving plenty of time for task 3 (which I would need since the implementation for the 50% solution was quite bug-prone). After making a small observation, I was able to optimise my original 30% solution somewhat, though I had no idea how many more points I would gain from the optimisation. When I finished implementing the optimised 30% solution, I tested it a fair bit before making a submission to the contest site.

Since task 2 wasn't a full feedback task, my score remained an unknown variable (especially since I could have had a few bugs), but in an attempt to better simulate the IOI environment, submissions for all tasks can be made to the training site (though only at a fixed rate and at most 5 times per task) to find out what our final score would be if we submitted the solutions as they were (although task 3 on the training site had a slight different scoring system to the one which would our final score from the exam). Upon submission, I found that my optimisation had improved my 30% solution to a 55% solution. After yet another small observation which allowed my solution to take greater advantage of the first optimisation, I was able to get that 55% to a 60%.

This left me with 20 minutes to code up and submit for task 3, which went somewhat against the original plan of giving myself the most amount of time possible for coding up the 50% solution. Despite my maddest coding attempts, I never submitted for task 3 (hence scoring 0 for it). Ultimately, I scored a 160 out of a possible 300, which isn't nearly as good as it could have been (since I spent so much time trying to come up with a better solution to task 2 and 3, rather than coding up the solutions that I had seen originally). Either way I managed to not fail, which was is a fair achievement.

Lunchtime. I got a chicken kebab at the same place as yesterday. Sitting around the table that we managed to catch, we gradually moved towards a pseudo problem session. Since a free afternoon was scheduled for right after the exam, the problem session was somewhat rushed as people had plans. Apparently, the solution that I had to task 2 could have been modified in a particular way to remove the algorithmic issues that I had, thus allowing it to score 100% which I found most frustrating since it was a modification that should have been more apparent given the nature of the task. We didn't look too deeply into task 3 as everyone needed to be somewhere.

This free afternoon was largely dedicated to allowing people to go home to pack their bags for the flight tomorrow. Since I had already had everything for Canada packed and ready to go from the start of the training week, I just stayed in my room, as did Evgeny since he was planning to get his bags later in the evening. During this time I took advantage of the availability of a working Internet connection to write up the post for the night before. That being said, I'm currently writing up this blog post while the connection has died again, which means I'll have to upload it later on tomorrow (or after the flight).

Dinner at a Thai place. Green curry chicken (which I find nothing less than absolutely awesome). While waiting for our dishes to arrive a full cup of water was knocked over, spilling water all over the table and (due to the slight lean of the table) on to my chair. After this happened I immediately moved out of the way, but underestimating the liquid nature of water, I remained seated. Seconds later, I realised the water was pooling to the part of the chair which I was sitting on. A couple minutes later, another cup of water was knocked over, spilling more water towards where I was sitting. Just another couple minutes later another cup fell, but this one was an empty cup. I still jumped. About 10 minutes later, yet another full cup fell. By this time, I was so jumpy that I would be staring at the cups whenever there was nothing else important to focus on.

Cups of water are dangerous.

-ken

Wednesday, August 11, 2010

So today was pretty much the same as yesterday. After another nice breakfast of ricotta pancakes, muffin, juice and cappuccino, I was ready for our third exam. Unfortunately, I was screwed over from the first question, which was meant to be done within 30 minutes. After spending 3 hours and finally getting it out, I was feeling pretty demoralised and only submitted partial credit for the other questions. By the end, I got a better score than yesterday, but I am still pretty sad about it.

After that, we grabbed some lunch and had a problem session in one of the seminar rooms. Once having realised that the problems we all failed on was actually really easy, we all felt slightly suicidal and very demoralised for the IOI. Luckily, we went to dinner at an Indian place, which increased our spirits, and after writing this post I went to bed, attempting to get more sleep for tomorrow.

Tuesday, August 10, 2010

Minesweeper incident

Yet another 8:30 start today. Though this time, it was a little more like a 8:45 start since Bernard realised getting to the UNSW labs in time before shovelling down breakfast was less than possible. Instead of the somewhat oversized "Big Brekkie", I thought it would be a good idea to scale down breakfast for today and see how a "Spot Brekkie Roll" was, especially after Evgeny couldn't finish his, being unable to take the Tabasco sauce (which I saw as a challenge).

[I just remembered that we're not meant to be making exhaustively longs posts, so I'll try to keep everything down to a paragraph per notable 5 hour time period]

As scheduled, yet another practice exam today which I found (and I assume everyone else found) significantly more challenging than yesterday's exam. As usual, the first task was reasonably straightforward and was full feedback (meaning we would know whether or not our solutions were correct and sufficiently efficient upon submission). That being said, it was the only problem of the four that anyone completed (which we all did). The final 3 problems took me around 4 hours of good, hard staring to realise that I wasn't going to complete any. At best, I submitted more brute force solutions (which would take a few billion times longer to run than our time limit), resulting in a score far to shameful to disclose. By the time the exam had ended, we all sat quietly at our keyboards for a couple minutes in shame, reflecting upon the sheer shock of the previous 5 hours. When we had finally gathered ourselves together, we went to lunch to relieve ourselves of the pent up stress that we had garnered.

Fish and chips with salad. A good meal. All of us (with the exception of Jarrah) had sat down at a table to eat and talk casually about the problems before our problem session. When everyone had finished eating, Bernard suggested we take advantage of the conversational momentum and have the problem session at the table (also avoiding using up energy walking back to the labs from the food court). So we stayed sitting and begun sifting through the tasks. After entirely skipping the first task (the easiest), we went onto discussing the second task, BEARs. We all had something to say about it, having come up with various ideas that may have contributed to a proper solutions. Of all the ideas that popped up, one seemed to have significant importance so we pursued it, diving into deeper and more complicated algorithms. After nearly half an hour of confused discussion, Bernard gave a hint that allowed us to put ourselves out of our misery and finally arrive at a proper (and elegant) solution. The next problem that we looked at was Candies, which I found comparatively less approachable than BEARs. As I saw it, the problem could be broken into two parts, the second of which I had largely solved. The first part had me completely lost which was what ultimately let me down. After some hand-wavy discussion, we came up with an algorithm that would work correctly and in time for the second subtask, but would only be useful with the assumption that we had already solved the first subtask. During our discussion of Candies, Luke brought up a brilliant insight regarding the first of the two sub-problems. Unfortunately there were some aspects that needed to be fleshed out which made things very much more complicated. Again, as with BEARs, we begun to dive deep into the algorithmic possibilities for solutions to the first subtask, Evgeny describing his solution to it in depth. Midway through his explanation, I felt sufficiently convinced that it was correct, but Bernard was much more critical of it's correctness, again giving us a light push towards the official solution. As usual, the algorithm which we ended up at was amazing and appeared to be so obvious and make so much sense, but unfortunately doing so many hours after the exam.

Off to the labs to have a stab at implementing the solutions to the problems which we had spent the previous 4 or 5 hours discussing. In the end, I was able to submit a complete solution to BEARs, as well as the final task from yesterday's practice paper. During the problem session, Bernard had mentioned something about the final problem (which I failed to mention in the previous paragraph). Summed up, the task was to produce a valid placements of mines in Minesweeper such that the configuration would fit a pattern of numbers describing the number of mines around each cell. The thing that Bernard had mentioned was in regards to the feasibility of the problem with relation to the size of the grid. Apparently, if at least one side length was not equal to 2 modulo 3, then it was computationally possible to efficiently produce a layout of mines that would fit the given grid (assuming such a layout exists). Luke and I searched around for the solution, finally coming across some observations that made today's final problem, Mines, the single most awesome task that I have seen during this training week (awesome enough for me to name this post after it). I would talk far more about the problem and the sheer awesomeness of the solution, but it's probably in my best interest to keep this post only as long as necessary *cough*.

Dinner was pizza. It's nice to have pizza from a place that isn't Pizza Hut or Dominoes. During dinner, the team and our leaders discussed the layout of the coming IOI, including the advantages and disadvantages of various changes that have been made (such as the idea of "release tokens" and the modified forms of submission that have been put in place). Interesting moral debate regarding the informatics spirit ensued.

As of a little over half an hour ago Luke left the room and as of a little a few minutes ago, Robert left too. I must say that it feels terribly unsatisfying to write up such a relatively short blog post after my original plan to write posts of exponentially increasing size (which would have had this post hovering around the 4000 word mark), but it's probably in the best interests of all (particularly myself, having lost a fair few hours of sleep typing away at my netbook). I have a bizarre feeling that there's going to be something crazy like an A-session tomorrow (which is like a normal informatics exam but without the computer, and with the use of more paper and more rigorous proofs). Chances are that I'll be entirely incorrect, but that's my guess.

Until next time

-ken
Today has been extremely enjoyable, the exam was extremely good preparation (ie, it was extremely difficult and no one got over 50%). That being said, they were extremely good problems, the easy one was a simulation of a findaword then looking for the letters not used. The other three problems were extremely impossibly mind-bendingly hard.

A change of scenery was in order for the problem session. Normally it would be done in a post-grad conference room (they're really quite pleasant and come highly recommended). It started to rain during lunch, so we stayed in a food court all afternoon going over the exam, and presumably educating the UNSW population about the nuances of knapsacks.

Tonight was capped off with some extremely nice pizza at an Italian restaurant in Kensington. And some frantic blogging in Kenneth and Evgeny's room. I also get the feeling that Bernard and Jarrah are also frantically setting tomorrow's exam 3 metres below us.

Day 2

So today we again woke up early, and grabbed a bit of breakfast before heading again to the labs for our second exam, which was very hard, and no one got out any other question except for the first, but although it was hard, the actual problems were incredibly neat, once we worked out the solutions, which we did at lunch after eating our food, while still at the table.

The rest of the afternoon was spent working out the implementation of our solutions, although we all knew exactly what to do, one of the problems required some trippy Chinese maths which none of us knew.

Finally, dinner tonight was pizza, which actually filled us up unlike last night, and after that we came back to our rooms to write this blog post where we have been instructed to reduce our number of sentences, so that may explain my lack of breath after proofreading this.