16 Sep

Slashdot | Geek Olympics Code for Gold

The 16th annual IOI competition is taking place in Athens this year.

I remember competing in this way back in the early nineties.

The blurb describes the competition as being about determining the “world’s fastest coder”.

Another ex-competitor describes it more accurately:

As a former competitor in the IOI, I wanted to correct some misconceptions regarding the competition format and scoring presented thus far. The competition consists of two rounds with fixed 5 hour time limits. In each round, a contestant is asked to solve three algorithmic programming tasks.

For grading solutions, the only criteria are program correctness and efficiency. To do this, a judge presents the contestant’s solutions for each problem with a set of test input cases. For every test case in which the contestant’s solution gives the correct output under the allowed program running time, the contestant receives a fixed number of points.

As the test cases vary in their size/difficulty, they allow the judge to evaluate both program correctness and efficiency (only the most efficient programs will be able to solve all the test input cases given by the judge for a particular problem). In some recent IOIs, contestants are given an optimization problem to solve, and a contestant’s program is graded based on the optimality of their generated solutions as compared to those solutions generated by programs of other contestants.

In none of these cases is grading ever based on the length of the code or coding speed (unlike the ACM or more recent TopCoder contests). Thus, the IOI is primarily an algorithm design contest rather than a coding competition.

16 Sep

RSS Feeds, with Firefox

I wasn’t aware of how useful RSS feeds were until yesterday, when I installed the pre-release of Firefox 1.

In fact, I remember talking to Donncha about the appropriate Mime-type for the XML used in it (still not sure – either application/xml or text/xml), while wondering to myself how many people actually find it useful.

After installing the new Firefox, though, I began noticing little RSS symbols in the bottom right of the browser on some sites. On clicking them, I discovered something wonderful: “Live Bookmarks“!

Try it and see! If you see the RSS symbol on the bottom right, click it, click “Subscribe to RSS”, then look in the Bookmarks of your browser!

When you want to update that list, just right-click on the parent folder, and click “Refresh Live Bookmark”.