Regulations of the Central
European Olympiad in Informatics
The current version of the regulations was approved by the General Assembly at CEOI 2007 in Brno,
CEOI 2009 Competition Rules
Competition Rules cover Competition Procedures and Judging Procedures.
CEOI 2009 takes place from Wednesday, July 8 (Arrival Day) to Tuesday, July 14
(Departure Day). The First Competition Day is Friday, July 10, and the Second
Competition Day is Sunday, July 12. On both competition days contestants will
be given three tasks to complete in the five hours.
There will be a two hour Practice Competition on Thursday, July 9.
All of the tasks in CEOI 2009
are designed to be of algorithmic nature.
Tasks may be of the following types:
- Batch tasks -
Solutions comprise a single source file of a computer program which reads data
from a specified input file and writes its answer to a specified output file.
- Reactive tasks -
Solutions comprise a single source file of a computer program which interacts
with an "opponent" program provided by the organizers using the
standard input and the standard output for reading data and writing results.
- Output-only tasks -
Solutions comprise a set of "output" data files.
For every task a memory limit
will be specified. This limit is on the overall memory usage including
executable code size, a stack, a heap, etc.
Competition, Equipment and Environment
All contest machines will be
installed to boot in Linux. Microsoft Windows will not be available in the
contest machines. The following packages will be installed:
- Ubuntu 8.04, Gnome;
- Web browsers: Firefox;
- Editors: mcedit, joe, vim, emacs, xemacs, rhide, lazarus, kdevelop, codeblocks, geany;
- compilers: gcc >= 4.1, g++ >= 4.1, Free Pascal >= 2.2.0 with documentation;
- debuggers: gdb, ddd;
- STL documentation.
- HP dc5800 - as contestant workstations and evaluation machine;
- CPU: Intel Celeron 560, 2.13 GHz - in contestant workstations and evaluation machine;
- Romanian keyboard;
- Available keyboard connectors: USB.
Grading and evaluation take
place on the Competition Server, which provides a similar execution environment
to that of the contestant workstation.
Each competitor's workstation has only Linux installed. A set of software
development tools will be available. These tools are used to develop solutions
to the competition tasks. There is no restriction on the number of times a
program may be edited, compiled, and run on the workstation.
The workstations will have network access to the Competition Server, a web server which provides documentation to
relevant task data and facilities such as printing, test execution, and
The workstations will neither have access to each other nor to the Internet.
Any attempt to access another competitor's computer or the Internet will be
considered cheating. Attempts to tamper with the Competition Server, such as
probing the server with customized URL's, will also be considered cheating.
Competitors must login to
Competition Server in order to use it (printing, submitting and testing
solutions). User names and passwords will be provided by support stuff, before
starting the contest.
Contestants are allowed to print
only text files during the competition. After a contestant requests that a
document be printed, the support staff will deliver the printout to the
contestant; contestants should not leave their computer to find printouts.
Printouts will be delivered as quickly as possible, but large volumes can
produce delays in delivery. The submitted document will be formatted using a2ps (two pages per sheet). The limit on the length of the
printout are 5 sheets. If a document to be printed is longer, only the first 5
sheets will be printed. On each competition day the contestant can print at
most 10 documents.
Contestants submit solutions to
the Competition Server via a web browser.
When submitting their solution, contestants have to choose the task. The
contest system determines the programming language by the file's extension.
Solutions for tasks may be submitted at any time.
For tasks which require output files as solutions, contestants must submit a
zip file containing all output files. An explanation will be given in the
tasks' description. The submission facility will validate the format of the
submitted file, accepting only valid output files for grading.
For tasks that require programs as solutions, the submission facility will
accept C, C++ or Pascal programs, verify that the program compiles and obeys
the stated limits on program source size and compile time; the submission
facility will then run the program on the sample test cases given in the task
description, enforcing the relevant run-time resource constraints.
The submitted program will be
accepted even if it fails of these checks. The submission's status will be
reported back to the contestant by the Competition Server as soon as possible.
For each task, the last accepted submission for that task will be used to award
Each submitted source program must be smaller than 1 MB. Submitted programs
which do not meet these constraints will be rejected by the submission system
and the contestant will be notified. There is a limit of 50 submissions per
A submitted program can be
tested on grading machine using an input file submitted by the competitor.
Submitted program will be run with task specified restrictions using provided
file. The output file will be provided. Input and output files will not be
checked for correctness.
The size of submitted input file
must not exceed 2MB. Any file exceeding 2 MB will be rejected.
TEST interface will be disabled
30 minutes before the competition ends.
For output-only tasks, output files will be submitted one by one as a .zip file, explanations will be given on the
task overview sheet, and scored as described in the task description.
For tasks that require programs as solutions, the
submitted source files will be compiled under Linux, enforcing the source file
size and compilation time constraints. The following commands will be used to
compile solutions of tasks:
Compiler and Version
gcc >= 4.1
gcc -O2 -static -lm abc.c
gcc >= 4.1
g++ -O2 -static -lm abc.cpp
FreePascal >= 2.2
fpc -O2 -Xs abc.pas
During the first two hours of
competition, contestants may submit written questions concerning any
ambiguities or items needing clarification in the competition tasks. Questions
must be submitted on the provided Clarification Request Forms, expressed either
in the contestant's native language or in English. If required, delegation
leaders will translate their contestants' questions into English after they are
submitted and before they are sent to the Scientific Committee. The Scientific
Committee will respond to every question submitted by the contestants. Contestants should phrase their questions so
that a yes/no answer will be meaningful. Questions will be answered with one of
- "ANSWERED IN TASK DESCRIPTION (EXPLICITLY OR IMPLICITLY)" - The task description contains sufficient information. The contestant should read it again carefully.
- >"INVALID QUESTION" - The question is most likely not phrased so that a yes/no
answer would be meaningful. The contestant is encouraged to rephrase the
- "NO COMMENT" - The contestant is asking for information that the Scientific Committee can not give.
In the competition room, blank paper and writing utensils will be provided. If a contestant wants to bring a keyboard or mouse, small mascots or English dictionaries to the competition, these must be checked by the technical staff during the practice competition day.
In case the SC makes verbal
announcements during the competition, these announcements will also be
available on the Competition Server's web interface. The web interface also
shows the current date of the CEOI's official clock, every time the page is
Submitted programs are not allowed to:
- access the network;
- open and create files;
- attack the system security or the grader;
- execute other programs;
- change file system permissions;
- read file system information;
- make system calls not related to solving the competition task.
All of the above actions are considered cheating, and may
result in disqualification.
At the end of each competition day, submitted solutions
are judged using data which conforms to the specification given in the problem
statement, but which is unknown to contestants during the competition.
Provisional grades, based on these tests, are delivered to team leaders. The
test data will be available electronically in the contestant environments.
Contestants and team leaders may use the contestant workstations to verify that
the grading is correct.
A Team Leader may file an appeal by completing an Appeal Form and submitting
the completed form to the SC until the GA meeting in the evening of the same
day. Every appeal will be reviewed by the Scientific Committee and the team
leader will be notified the committee's decision. All appeals and their
disposition will be summarized at the final GA meeting of that competition day.
In the event that a mistake is discovered in the grading of a task, every
successful submission of that task will be re-graded and re-scored whether or
not the scoring of that submission has been appealed. Note that re-scoring may
result in a higher or lower score for any contestant. Should anyone's score
change after grading results have been distributed, new results will be printed
and distributed to them.