Final of the past championship for students of Moscow State Technical University - photo MDovzhenko
The rules are simple - 5 "Olympiad" tasks of varying complexity, plus the ability to "crack" the decision of the opponent with a complex set of input data. That is, first we write our code, then we “break” someone else’s. Officially, all this is called the All-Russian Open Programming Championship
"KROK-2013" with the support of Codeforces and Saratov State University.
Individual credit, prizes - 100 000 rubles for the first place, 70 thousand - for the second, 50 thousand - for the third. Plus there will be an additional game contest, the winner of which will also receive a prize. For finalists from the Russian Federation - a free trip to Moscow, food and accommodation for two days.
')
Last year, a similar event was held, then about 1,500 people participated (in the qualifying round), so this year the scheme will be as follows:
- Qualification round - April 13-14, remotely (no more than 2000 participants pass to the next stage).
- The first qualifying round - April 15, remotely (400 participants).
- The second qualifying round - April 22, remotely (50 participants).
- The championship final will take place on May 16 and 17 in Moscow at the office of CROC.
In all rounds of 5 tasks, as they get closer to the finals, their complexity will increase slightly.
Regulations
Students and young specialists over 18 years old are invited to participate. There is also an opportunity to participate out of the competition if you initially understand that you do not qualify for the final, and do not want to be an extra competitor to your colleagues.
The tournament will be held like this:
- You are applying for registration.
- Get a rule on Codeforces. If you already have an account, you can specify it at registration
- At the appointed time from the site comes a reminder, you go to the site, read the conditions of tasks
- You solve them and commit the code to the Codeforces server.
The earlier a successful decision was made, the more points you get for the task. Accordingly, if there are several working solutions, the one who commits his earlier wins. But for unsuccessful attempts - fines.
If you get to the final, then everything happens more interesting:
- You are coming to Moscow. We show you a little city and organize an artificial intelligence programming competition. It is always unusual. For example, at the last championship there were battles of robot wizards: participants wrote an algorithm for their bot, and we loaded it into the world with other bots and watched who was better. Here you can watch the video . This year, the tradition will continue, and we will prepare another surprise.
- On the second day of competition, after a rest after the road, you find yourself in a specially equipped room. There is WiFi, sockets and local machines with a set of development environments that cover all the languages ​​required by the rules. Usually, not everyone uses such machines, because it is possible (and even desirable) to come with any kind of hardware - from a separate keyboard to a laptop.
- You enter the site using your rules, get tasks, solve them.
- Having solved his task (after that it is already impossible to work with it), the participant can look at the source codes of the confirmed solutions of the same task of other participants. You can offer them a test, that is, try to “hack” their solutions. For successful hacking - a bonus, for unsuccessful - a fine.
Before the start of the tournament there will be an introductory word with a reminder of the rules and an explanation of technical details. Then a few hours of code, then lunch, then - the announcement of the results.
During the championship, you can safely go to the toilet, smoke, drink coffee and eat.
Tasks
The tasks are abstract, not having a special relationship to the daily programming practice. The main task is to evaluate the programming technique, as well as the ability to invent, and most importantly, implement efficient algorithms. Here are a
couple of examples .
You can use any of your work - templates for sorting algorithms, code procurement, and so on. Flash drives can be brought. Internet access will be only up to Codeforces services, you will not be able to use your connections.
At the last tournament there was a question about whether it is possible to use pre-clips before getting the input data, for example, miscalculation of all possible solutions with their limited base. Yes, you can, just as you can calculate tables of sines and other things that you suddenly need - but there will not be tasks where this can really help.
Tips
- First, many who do not get enough sleep before the rounds. It is clear that life is full of adventures, and it's always a pity to sleep, but still it’s worth thinking about.
- Secondly, do not immediately take up the most difficult task with the maximum score. Many who are “stuck” on her preliminary rounds and do not get points at all. It is better to come somewhere in the middle of the table, but stably go higher and higher in the qualifying rounds. Already in the final you can start with the most difficult task.
- Thirdly, do not get carried away hacking immediately after the commit. The optimal strategy is to solve a maximum of tasks, and then break others either when everything has already been done or when it is clear that there is a difficult task that you don’t have time to solve, but there are still chances to earn points on hacking.
- Fourthly, despite the availability of the Internet, you should not waste time searching for a solution - practice shows that you will not find it.
- Fifth, before the championship it is worthwhile to get rid of the standard olympiad training: it is better to refresh the main algorithms and go through the course of discrete mathematics.
All tasks are limited in memory and runtime. The server configuration is Intel E6720 2.67Ghz, RAM 3Gb, Windows 7, but you do not need to prepare compilers for its architecture - in the commit only the code, the compilation will take place right on the championship server itself. Time limits are very loyal.
However, taking into account the fact that different development environments are available, in tasks where time is critical, it is better to use what gives greater speed. For example, there will be the whole Pascal family, but there is a great chance that it is unrealistic to optimize the code if you choose it.
FAQ
- How many people registered at the time of publication of the topic?
About 1000 people.
- Where are the exact rules?
Here
it is .
- The task passed 19 data sets out of 20: will I get at least one point for it?
No, you will not. You have to go through everything.
- I am not a citizen of Russia. Can I participate?
Yes. But it is worth considering that the road to Moscow, we pay only the finalists - the citizens of the Russian Federation. If a foreigner qualifies for the final, we will be able to pay only for room and board in Moscow, without a road.
- How many girls will there be?
For two years of holding the finals of such championships, I saw about 5 girls. Alas, while none won prizes.
- I am 45 years old, I am bearded and a student. Can?
Yes. You can even if the bearded and not a student.
- There are reports from the last final?
Photo report and
report of the participant .
- Is there an opportunity to participate at least in qualifying and qualifying rounds, if I am under 18?
Yes, if the system is not overloaded. Presumably - not a problem, but you will not pass to the final, alas.
- Where is the registration?
Official registration
is here . If you don’t know what to write in the “University” field - write “Null, but I graduated from school then,” a place of work or any other things reflecting the real state of things. If you want to register out of competition (without the opportunity to reach the final, but for a rating on CF), then you are
here .
- Cool, but I can not. When is the next championship?
Try to take part out of the competition. If it does not work out - the Championship takes place every year, plus there are a lot of contests and contests. The competition of flying robots with a prize of 1 million rubles registration has already been closed, but you can follow our corporate blog here on Habré - major events will be announced.
Just in case -
one ,
two and
three videos.