This commit is contained in:
Antti H S Laaksonen 2017-02-21 19:25:37 +02:00
parent 3f203aaacf
commit 27407f0508
1 changed files with 80 additions and 0 deletions

View File

@ -842,3 +842,83 @@ For example, the representation of
$123$ in base $2$ is 1111011 and
$\lfloor \log_2(123)+1 \rfloor = 7$.
\section{Contests}
\subsubsection{IOI}
The International Olympiad in Informatics (IOI) \cite{ioi}
is an annual programming contests for
secondary school students.
Each country is allowed to send a team of
four students to the contest.
There are usually about 300 participants
from 80 countries \cite{iois}.
The IOI consists of two five-hour long contests.
In both contests, the participants are asked to
solve three algorithm tasks of various difficulty.
The tasks are divided into subtasks,
each of which has an assigned score.
Even if the contestants are divided into teams,
they compete as individuals.
The IOI syllabus \cite{ioiy} regulates the topics
that may appear in IOI tasks.
This book covers almost all topics in the IOI syllabus.
The participants for the IOI are selected through
national contests.
Before the IOI, many regional contests are organized,
such as the Baltic Olympiad in Informatics (BOI),
the Central European Olympiad in Informatics (CEOI)
and the Asia-Pacific Informatics Olympiad (APIO).
Some countries organize online practice contests
for future IOI participants,
such as the Croatian Open Competition in Informatics (COCI) \cite{coci}
and the USA Computing Olympiad (USACO) \cite{usaco}.
\subsubsection{ICPC}
The International Collegiate Programming Contest (ICPC) \cite{icpc}
is an annual programming contest for university students.
Each team in the contest consists of three students,
and unlike in the IOI, the students work together;
there is even only one computer available for each team.
The ICPC consists of several stages, and finally the
best teams are invited to the World Finals.
While there are tens of thousands of participants
in the contest, there are only 128 final slots available,
so even advancing to the finals
is a great achievement in some regions.
In each ICPC contest, the teams have five hours time to solve
about ten algorithm problems.
A solution to a problem is accepted only if it solves
all test cases efficiently.
During the contest, the teams see the results of the other teams,
but for the last hour the scoreboard is frozen and it
is not possible to see the results of the last submissions.
The topics that may appear at the ICPC are not so well
specified as those at the IOI.
In any case, it is clear that more knowledge is needed
at the ICPC, especially more mathematical skills.
\subsubsection{Online contests}
There are also many online contests that are open for everybody.
At the moment, the most active contest site is Codeforces
that organizes contests about weekly.
In Codeforces, participants are divided into two divisions:
beginners compete in Div2 and more experienced programmers in Div1.
Other contest sites include AtCoder, CS Academy, HackerRank and Topcoder.
Some companies organize online contests with onsite finals.
Examples of such contests are Facebook Hacker Cup,
Google Code Jam and Yandex.Algorithm.
Of course, companies also use those contests for recruiting:
performing well in a contest is a good way to prove one's skills.
\section{Resources}