Google Code Jam – Contest scoreboard
code.google.com
code.google.com
Curious why the "hard problem" disclaimer is on the 4th?
The 4th also has a 90% solve rate (with 50% more submissions) while the 3rd has 44%.
In addition to the disclaimer, one thing which worried me was the N <= 1000 in the large problem specification. I got a quite elegant fast solution and a so low bound was really surprising.
That should probably be a few orders of magnitude higher to realistically make the time constraint remotely difficult.
This was a fun problem to think about, though. Naomi is such a cheater.
I'm in my university's team for the ACM ICPC [1]. We practice about one or two times per week, where each practice session is 5 hours. Some of the stronger programmers really practice this stuff every day. cf. Nick Wu's description of his preparation for programming contests [2].
[0] In 5 hours, the large input sets will be judged. I might move up or down the rank list depending on whether my answers for the large input were correct.
[2] http://www.quora.com/Specific-Quora-Users/Nick-Wu-Did-your-t...
At my university, after a practice session, we sometimes discuss solutions to problems so that those who couldn't figure them out will know how to solve them in the future. After being told the solution to a problem you couldn't solve, you should try coding it up anyway.
I imagine there's a lot of practice involved, but I wasn't able to spot an interview that specified the exact amount of time tourist spends coding or studying algorithms every day.
[1] http://community.topcoder.com/tc?module=AlgoRank
[2] http://www.wired.com/2010/11/mf_algorithmolympics/
[3] http://www.smh.com.au/lifestyle/the-whiz-kid-20120821-24k69....
- How many hours a day are you in front of the computer?
- Not more than three to four. I like playing football and table tennis, so I try to find time for sports as well.
Source: me asking that exact question to him at IOI 2012
Also, this guy has been performing at an extremely high level for years. If he didn't do any competitive programming practice at all for a year, I doubt you'd notice a big difference in his performance.
Some of the top guys at Topcoder Open / Google Code Jam don't even participate in matches outside of the yearly tournament and I doubt they are practicing consistently (i.e. once you get to that level at problem solving, performance doesn't seem to decay much and certainly much less than in a similar situation for athletes - though these guys are students / engineers whose brains are still being stimulated and solving other kinds of problems outside of competitions).
It's not an either/or question though =) By most common definitions, the guys at the top, specially those that reach the finals are "geniuses" at algorithmic problem solving, yes.
Maybe that's jealousy talking, though.
(Actually, most of the good sport coders that I know develop that knack of knowing where the solution is headed, without pinpointing a previous problem)
Anyone solve the small case for problem 2, but get the large case incorrect? Can't fathom what the issue might be.
Agreed on C.
I am comparing these quals with the quals from last year.
The first Indian winner is #236, but if you go to the last page, there are a bunch of them trying.
EDIT: I'm gonna make a script to list the best countries that output programmers.
You'll find the same countries consistently at the top: Russia, Poland, Belarus, Ukraine (i.e. Eastern Europe) and China, Japan (i.e. East Asia) as well as a few others. No news here.
Regarding "but if you go to the last page, there are a bunch of them trying", this is also a function of how many "bad programmers" participate. There's no way to tell whether bad Polish or US programmers filter themselves out of these competitions but Indians not so much.
Comparing the performance in the next few rounds would make more sense.
Also, competitive programming contests are really popular at Indian schools, so a lot of these could be HS students (nothing to back this up, though - they don't publish this information)