Hi. I was wondering what are the selections systems for IOI in different conutries. As far as I know, in math olympiad you can find the tasks from national selection contests translated into English, and I want to know if there is any such place for the informatics one. Romania's tasks, for example, unfortunately, are not translated into English and official solutions are hard to find (still, the tasks are available for solving and can be found at this site, the problems which have on the "sursa" column the words "lot" and "seniori" in the "arhiva de probleme" section are tasks from our national selection contests, around 18 per year). What about you? Where can I find your national OI tasks (preferably with an oline judge)? Is there any place where we can find their official solutions? I think that the answers for this question will help a lot of the high-school students to improve their skills.

PS: Please don't forget, when answering the question, to say wheter there exists a place where we can find the tasks, preferably with an online judge, or not.

1. Iran team selection system:

In Iran there are a few rounds to determine the IOI team.

The first roundconsists of 30-40 theory (combinatorics, graph theory and algorithm) multi choice problems (on paper) and every 10th-11th grader in the country can participate. About 1500 top students from all over the country advance to the second round.The second roundis about 3 months after the first one and is held in two days:Day one) 25-35 theory multi choice problems (on paper) and it has 50% of total score of this second round.

Day two) 4-5 theory problems (IMO style, on paper) and it has the other 50% of total score of this round. And it is ironic because today was this year's day two (good luck guys!).

The solutions of second day of top 250 from the first day will be graded (to avoid grading all 1500*4 solutions).

80 top students from this round will advance to the next round.

The third round(also called programming phase) has also two days. There are three programming problems in each day and each one has three subtasks. Each subtask is like a project Euler problem (you should only submit one number to the judge).40 top scorers (total score of this round is calculated with formula 40*score_of_third_round(this round) + 60*score_of_second_round(previous round)) will advance to the next round.

Summer camp(also referred to as 4th round): These 40 students will go to a summer camp that runs all summer. During the summer they have lots of courses in combinatorics, graph theory, algorithms & data structures and C++. There also lots of exams. But the results are determined by final exams: 3-4 theory exams (IMO-style) having 40% of final score in total, and 3-4 programming exams having 60% of final score in total.Finally, among these 40 people, 8 will be gold medalists, 16 will be silver medalist and others will be bronze medalists.

Team selection: Then the winter camp begins. All 8 gold medalists (which are now free of SAT-like exams and can freely apply to any college they want) + eligible last year gold medalists will participate in the winter camp. There are lots of courses and exams. About 8 easy programming exams each having 5% of total score and 4 final (also programming) exams each having 20% (all exams in winter camp and all programming exams in summer camp follow IOI standards, 3 problems in 5 hours and each problem has some subtasks, just like IOI). And top 4 will be announced as Iran IOI team.Those 8 exams might have problems from previous International unknown contests, but those 4 final exams have unrepeated beautiful problems.

2.

NO!Problems are only in Persian. But a bunch of people are trying to write a judge and put translated problems on it. So, be hopeful, soon you'll have access. And this post was a good reminder, let me talk to the heads ;)Wow very nice and complete answer. I hope soon that judge you were talking about will be ready to use. I've just realized that I didn't mention anything about Romania's selection system itself, and just about the tasks. We have the county olympiad from which a lot of students, about 100 per each class get qualified to the national OI. There, we have 2 days each class with its own tasks (well not exactly, there is just a particular case: 11th grade tasks are the same as 12th grade ones, still the scoreboard is different). The first half from each class(about 200 stundents) participate one day later at one more probe with the same tasks for everyone (we've just participate in this contest about 10 days ago) and the first 20 constitute the big team (well the first 20 when adding the score from this contest to some strange coefficient based on how well and how many points you've scored in national OI). Now these 20 students have 3 more contests to sustain, and the first 16 have other 3 more contests. All the contests except for the county one have 3 tasks, and at the national OI we have 4 hours, while the contests for the big team lasts for 5 hours. 3 * (3 + 3) = 18 the number of tasks I was talking about. Well we can consider 3 more tasks from the contest use to select the big team, obtaining 21 tasks. These 3 tasks have "one + year + baraj" at the "sursa" column.

In Poland there are 3 stages, but only the last is important for going to IOI. TOP — 4 automatically advances, 2 next people are substitutes.

You can see the tasks at main.edu.pl, it's also an online judge.

The first one whose answer implies the existence of an online judge :) Short and clear answer

What version of C++ is used at main.edu.pl? My code compiles in all versions of C++ in Codeforces and I keep getting compile error.

In Canada, the top 20 participants of the Canadian Computing Competition go to the Canadian Computing Olympiad, an onsite, week-long stay at the University of Waterloo where there are two days of programming with three tasks on each day. Top four make it to IOI. (aka FatalEagle and another 3 people.) The rest is lectures and activities.

What's the difference between Computing Competition and Computing Olympiad? Also, you didn't mention anything about a place where we can find the tasks or about its existence.

Canadian Computing Competition (CCC) is the first stage where all middle or high school students from Canada (and Canadian citizens abroad) are eligible to compete online from their day school. The tasks are distributed through the mail (in paper), and it is up to the school teachers to determine when the school will write the contest. The contest is 3 hours long with 5 equally weighted problems with partial scoring available (IOI-style) and the top 20-25 participants will advance to the Canadian Computing Olympiad (CCO).

This year, there was an issue with the CCC online judge during the contest date, so a substitute qualifying round was held (CCOQR). CCOQR is a 2 hour IOI-style contest with 3 problems, with a maximum score of 75 (25 for each problem).

The CCO is a five day camp at the University of Waterloo that will determine the Canadian IOI team. Two 4-hour 3-task IOI-style contests are held on the last two days of camp with a maximum score of 75 for each contest. The participants are then sorted in descending order of (CCC score + CCO day 1 score + CCO day 2 score) and the top 4 will go to IOI.

You can find all past CCC, CCO, and CCOQR tasks on wcipeg, some of the problems have solutions on that site that can only be viewed after you solved the problem (don't ask me why), and as far as I know there are no electronic copies of solutions available online, although in recent years they have distributed a paper copy of the CCO solutions to CCO competitors. Also you can find some recent CCC/CCO problems on an online judge I am involved with DMOJ.ca (all CCC problems have codes prefixed with cccYEAR and CCO problems with ccoYEAR), with some solutions for this year's CCC here. We plan on adding all future CCC and CCO problems to this judge.

Thanks for the answer. It's very nice when, besides the system itself, one tell us about an online judge. Hope more will tell about their countries and possible place to find the tasks

Here is a paper about how the system works in Turkey. We generally do not publish our exams though.

our team selection (syrian) goes like this :

we have 5 rounds :

1 — iq test (the schools team selection), top 5 from every school advance to the next round .

2 — another iq test (harder) , every city in syria contains schools groups every group consist of 5-6 schools , so we call this round "the groups team selection" , top 5 from every group advance to the next round .

3 — (the cites team selection) here there are 20-30 algorithmic problems but you have to solve them on paper and answer 1 or 2 test cases , top 5 from every city advance to the next round

4 — (the central olympiad) there are two rounds each round duration is 3 hours , they are in the same day , each round consist of 4 algorithmic problems with subtasks (just like the ioi) , if you passed this round you will be one of the syrian national team and you can participate in the 4th and 5th rounds every year , the first one can apply to any university .

5 — (the international team selection) it's one round contest and it consist of 4 hard algorithmic problems you have 4 hours to solve them .

then they calculate the score of every participant like this : 20% from the 4th round + 80% from the 5th round , and the top 4 qualify to the ioi .

all the syrian national team go to the summer training camp .

note : if you failed in one of the first 4 rounds you won't be able to participate in all of your life :3

This comes up every year, maybe several times every year. Here goes, Slovak OI:

0-th round: 1 month (solving at home), 4 problems, 2x theory, 2x write a program, 10 points each with partial scoring; the cutoff is set so that everyone who can code bruteforces advances, just like in online qualification rounds

regional round: 4 hours (at one place in each of the 8 regions of Slovakia), 4 theoretical problems, 10 points each; the cutoff is set so that ~30 people advance

national round: 2 days, 4.5 hours and 30 points each; the first one has 3 theoretical problems, the second 2 or 3 practical (write a program) problems; the top ~10 plus promising younger students advance

intermission: there are points to score for the selection round for stuff like solving few hard problems from the Correspondence Seminar in Programming (KSP) and many usually easier problems from a related beginners' training and a university ACM training

IOI selection (not an official part of the olympiad): 6 DAYS, 7 HOURS PROGRAMMING EACH, 80% OF ALL POINTS CAN BE GAINED HERE, there are also small theoretical excercises; the top 4 go to IOI, the next 4 eligible people go to CEOI (the CEOI and IOI teams usually don't intersect)

BTW past results

The partial scoring of practical problems is done using batches of tests like on OI; usually, each batch is worth 1 point, but during the selection round, the points depend on how many people passed that batch. It's like CF dynamic scoring, except it's actually balanced.

In recent years, we've also started exporting people to compete at IOI for other countries (like Austria). If you'd like a mail order contestant, contact me and we'll clone you one.

Wait a moment, who is this guy? D:

He's Slovak.

SpoilerSpoilerSpoiler:^)

No, he is not :/

No, he is not :/

Yeah, most probably >:3

Since when do you decide that?

As a nationality he is not Slovak.

EDIT: I meant *ethnicity.

His name seems like a Vietnamese name :)

In Brazil, we have a national olympiad which has two phases, and both are on-site blind contests. Any school can register any student. The first phase occurs in each participating school, and the second occurs in regional headquarters.

The best students in the olympiad are invited to participate in the Team Selection Phase, which lasts one week and consists of four on-site online tests that occur in Unicamp, a university in the state of Sao Paulo.

The four best students in the Team Selection Tests (best score sum) are invited to represent Brazil in IOI =D

Any place where we can find the tasks from previous years?

Here are some of them.

Vietnam IOI teams are selected according to the results of these 3 contests:

National Olympiad: takes place annually in the first week of a year, consists of 2 days with 3 problems and 3 hours each, using the offline rules (same as COCI). All high school students nominated by their cities/provinces take part in this contest. As well as prizes awarded, top 32 students advance to the next round.

Team selection contest: Held in the late of March every year. Top 32 students in the National Olympiad and who competed in APIO the previous year are invited to the contest. Participants has to solve 4 problems in 5 hours via the CMS system on 2 days. 15 students with highest score are selected to the APIO team.

After the Asia-Pacific Informatics Olympiad (APIO), the IOI score of each participant is calculated as: Team selection test score (over 40) + APIO score (over 20). IOI team consists of 4 highest IOI score students.

here is infographic describing american selection

MoOOoOoOOooOOOOoOOOoooOoooo

Who are the dogs? Brian Deans?

The system in Syria.

I think you could find some answers here: http://www.ioinformatics.org/oi_index.shtml I think there are almost 20 countries depicted in the 10 volumes :D

In India, the selection takes place in 3 stages

The Zonal Computing Olympiad and the Zonal Informatincs Olympiad ZCO consists of 2-3 IOI style competitive programming problems. The questions for the last few years can be found here: https://www.codechef.com/ZCOPRAC ZIO consists of 3-4 IQ and maths problems majorly consisting of combinatorics, etc. Question papers for the last few years: http://www.iarcs.org.in/inoi/current.php

The Indian National Olympiad of Informatics INOI consists of 2-3 IOI style competitive programming problems which are usually much harder the the problems in ZCO and ZIO. Link to last few years papers: https://www.codechef.com/IOIPRAC

International Olypiad of Informatics Training Camp Few selected students are invited to this camp on basis of INOI. The problems for this are not made available :( . The team of 4 is selected on the basis of the performance in this Training Camp.