Everyone knows that Facebook plans to hold a Hacker Cup competition. And if at first there was almost no specific information on the competition itself, now there is a completely intelligible
FAQ and very detailed and accurate
Terms & Conditions .
I would like to tell you more about the Hacker Cup, which begins on January 7th.
The most interesting question:
What do we have to do?
Each stage of the competition will contain three algorithmic tasks. For each task will be given: condition, restrictions, formats of input and output data, as well as a file with input data. As a solution, you must provide the result of the program as an output file, as well as the source code of the programs used to find the answer.
')
The process for an individual task is the following: we read the condition, invent and write a solution, test it, then download the file with the input data. From this point on, we have exactly 6 minutes to send a response. The answer can be sent several times, the last one sent in those 6 minutes will be counted. If after this time we have not sent the result, then we get zero for this task and we can never return to it. If sent, it seems that we will have to wait for the end of the competition to find out if we sent the correct answer.
Tasks can be solved and passed in a random order during the entire time of the competition.
What software can I use?
You can write in any programming language to taste, with the proviso that the organizers must have the physical ability to build and execute our program (or several programs) using IDE / compilers / build systems that are freely available. A special point is the permission to use MS Visual Studio, since Visual Studio Express is freely available. All source codes used for the solution should be sent simultaneously with the output file. The rules allow you to solve problems even by hand, provided that, along with the answer, a description of the solution is sent in a text file.
Evaluation of results
It's all standard. The problem is solved correctly - we get one point. The important point is that all tasks are evaluated equally, although they may differ in complexity. The result in the competition is the number of correctly solved problems. If the number of tasks of the participants coincides, then watch the penalty time. Penalty time is the time to send the last correctly solved problem.
The structure of competition and promotion
- The qualifying round begins on January 7 and will last 72 hours. During this time, you will need to correctly solve at least one of the proposed tasks. Once again, after the input file has been downloaded, we will have only 6 minutes to send the answer along with the source code, so you only need to take the input file after the solution has been tested and there is confidence in its correctness; and secondly, it would be impossible to find out whether the problem was solved correctly or not.
- The first round will consist of 3 separate sub-rounds, each of which will last 3 hours. The best 1000 people from each sub-round enter the second round of the competition. At the same time, you can even participate in all three sub-areas, provided that you have not yet entered the Top-1000 in one of the previous sub-areas. Thus, in the second round goes 3000 people.
- The second round will last all the same 3 hours. Top-300 people will get T-shirts, Top-25 will go to Headquarters Facebook, Palo Alto to participate in the final round.
- The final participants are paid for trains, accommodation, and all kinds of food. And these 25 lucky ones will fight for possession of the title of the winner of the Hacker Cup and a rather modest prize pool (the winner gets $ 5000, second place - $ 2000, 3rd - $ 1000, the rest $ 100).
Who can participate
The limitations are: a member must be registered on Facebook. He must be at least 18 years old, he should not be an employee of Facebook.
Reflections
In general, the Hacker Cup is the same
Google Code Jam , with about the same prize pool.
There are only a few, quite significant in my opinion, differences in the rules. In general, the idea is the same: the competition of talented programmers who like to just solve puzzles, love to program, and do not fight for money. By the way, this is the first reason for a rather scanty prize fund for competitions of this magnitude. The second reason - the more the prize fund, the greater the desire to win and take the "jackpot", then the number of attempts at cheating will increase significantly.
To summarize, Facebook has greatly simplified the rules compared to Google Code Jam. Suppose in a Google competition, tasks can be rated with different points, for each task there are two sets of input data, simple and more complex, which allows you to choose the appropriate solution method and get different points for the task. But the most important thing: in Google Code Jam, when choosing a simple set of input data (but a small number of points for the solved problem, respectively), you can send the solution several times, and immediately see whether it is correct or not. This way you can minimize the number of stupid mistakes.
It turns out that the Facebook Hackers Cup is something like the “light version” of Google Code Jam (it’s not surprising if someone from Google’s organizers is currently working on Facebook).