These Competition Rules cover Competition Procedures and Judging Procedures. This draft may be revised to address omissions or inconsistencies, but will not change substantially.
The final version will be presented at the first GA meeting of IOI 2018. The most important changes since IOI 2017 are marked with red color.
Delegation Leaders have the responsibility of ensuring that all members of their delegation fully understand these rules and abide by them.
The source program provided by the contestant must be contained in one source file as specified in the task statement.
Submissions must not perform explicit input and output operations; instead data must only be exchanged through the interfaces specified in the task statement. In particular, direct access to any file, including standard input or standard output, is forbidden (though writing to standard error is allowed).
As Java Virtual Machine uses multiple threads internally, using multiple threads is allowed in all programming languages. Note, that the running time of the submission will be counted as a sum of running times of all threads. E.g. if there were two threads running for 5 seconds each (thus, the program finishes in 5 seconds), then the running time of the submission will be 10 seconds.
Each task will be divided into several subtasks, each worth a portion of the total points.
Time and memory limits will be specified for every task. In general, time and memory limits will be generous (for example, double those required by the expected solution). The memory limit is on the overall memory usage including executable code size, stack, heap, etc.
For each programming task, the contestants can download a zip file for a programming task from the grading system. The zip file contains interface files, a sample grading program, and a skeleton implementation of a required source file. The skeleton exercises a interface, but it does not solve the problem. The sample grader provided on the workstation would not be the same as the official grader used by the grading system.
There will be two competition days. On each day contestants will be given three tasks to complete in 5 hours.
There will be a 2 hour Practice Competition prior to the first competition day, to familiarize all contestants with the grading system. The practice tasks will be published before the IOI. Contestants may bring printed solutions to the practice tasks, on paper only, during the Practice Competition.
In order to protect the confidentiality of the tasks, all direct and indirect contacts and communication between contestants and delegation leaders are prohibited between the moment where tasks for a competition day are presented to the members of the GA and the end of the competition on the following day. During this period the contestants are not allowed to communicate by any means, direct or indirect, with any member of the GA or anyone who knows the tasks. The GA members are not allowed to communicate task-related information to anyone who may not attend GA meetings. The contestants, the GA members and anyone else who has had access to the tasks must obey any instructions which restrict their access to specific parts of the IOI venue.
If a contestant violates the quarantine, the contestant can be subject to disqualification. If some other person associated with a national delegation violates the quarantine, then all contestants of that delegation may be subject to disqualification.
Please refer to the Contest Environment page.
Each contestant will receive the official English version of tasks in an envelope on each contest day. For those contestants who requested the translation of the tasks, an additional version of the tasks in the requested language will be provided in the same envelope with the English version.
In addition, each contestant will have online access to the official English version of tasks and all task translations in electronic format (PDF).
Finally, working paper and Clarification Request Forms will be on paper and provided for each contestant.
In the competition room, blank paper and writing tools will be provided. On the competition days, contestants may not bring anything into the competition rooms, except for the following items under the proviso that they cannot transmit or store any data in electronic or printed format (other than the purpose for which they have been designed):
Bringing a keyboard, mouse, small mascots and/or English dictionaries into the competition rooms requires prior approval from the IOI 2018 Technical Committee. A contestant must submit these items to the technical staff during the practice competition day to use on the first competition day.
Alternatively, a contestant may submit these items to the technical staff during the time of analysis for the first competition day, to use them on the second competition day.
The technical committee checks the submitted items. Then the submitted items are given to the contestant in competition if the technical committee has approved them.
A contestant must leave the items on their workstation if they want to continue using these items on the second competition day.
After the second competition day, a contestant must take all items with them.
Any attempts to bring any other items unlisted above into the competition rooms are considered cheating. In particular, the following items are strictly prohibited on the competitions:
For the case of snacks, exceptions could be made by the IC for students with special dietary requirements.
Any electronic or printed materials provided by the organizers during a competition round may be used by the contestants (e.g., a Users Guide to the Contest System, or any electronic documentation or reference manuals provided in the installed contest environment or on the provided grading system).
All contestants must wear their ID badges during the competition. Each contestant will have a pre-assigned workstation. Contestants should be in their seats by at least 5 minutes prior to the start of the competition. Contestants must find their assigned computer, sit down, and wait for the competition to begin without touching anything (such as keyboards, mice, pen or paper).
During the competition, contestants may submit Clarification Requests concerning competition tasks, rules, and/or grading. Contestants may submit Clarification Requests by using the grading system, or by writing questions on the Clarification Request Forms. Contestants will receive the reply from the Scientific Committee via the grading system, or the Scientific Committee will write the reply on the submitted Clarification Request Forms and they will be returned to the contestants.
Questions may be expressed either in the contestant’s preferred language or in English. But, on the grading system, contestants may not able to type characters required for their preferred language. If required, delegation leaders will translate the 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 during the competition. Since this might take some time, contestants should continue working while waiting for the answer to their questions.
Also, contestants may submit written questions using the provided Clarification Request Forms. In such case, Clarification Requests must be submitted to the support staff in the competition room.
Contestants should phrase their questions so that a yes/no answer will have a clear meaning. Contestants should not ask negative questions such as “Isn’t it true that…?” because the yes/no answer to such questions may cause confusions depending on the native language of the contestants. Instead, positive questions of the form “Is it true that…?” are recommended.
Questions will be answered with one of the following:
There is no restriction on the number of times a program may be edited, compiled, and run on the workstation. The workstations have network access to the grading system, as well as facilities such as printing and solution submission.
Grading and evaluation take place on the grading system, which provides a similar execution environment to that of the contestant workstation. Grading workstation will have the same hardware and software configuration as contestant’s workstations. (However, the softwares installed in contestants’ workstations and grading workstations are not identical. Grading workstations have programs required for monitoring and grading system. But they do not have programs which are not necessary to compile and execute contestants’ solutions.)
Contestants must submit their solutions for tasks by using the grading system. To avoid overloading the grading system, there are two restrictions on the number of submissions:
Each submitted source program must be written in C++, Pascal or Java, it must be smaller than 256 KB, the evaluation server must be able to compile it in less than 10 seconds and at most 512 MiB of memory.
The scores will be calculated as follows:
For example, consider a contestant who made two submissions on a task that contains two subtasks. If the first submitted solution got 30 points for the first subtask and 10 points for the second subtask, and the second solution got 0 points for the first subtask and 40 points for the second subtask, then the final score for this task will be 70.
Contestants can use the grading system to view the status of their submissions and get a short report on the compilation errors of their source code.
For every submission, the grading system reports the score for each subtask. If a subtask is not fully solved, the grading system gives a feedback only for the first test case among the lowest scored test cases in the subtask. The feedback includes the test case number and one of the following reasons:
For tasks with partial scores, instead of “Output is correct” or “Output isn’t correct”, the feedback gives “Accepted” or “Wrong Answer”. “Accepted” means that the submission produced a correct answer. Still, it might not get the full score, due to scoring rules explained in the task statement. “Wrong Answer” means the submission has violated some constraints or produced an incorrect answer. The precise meanings of “Accepted” and “Wrong Answer” will be explained in the task statement.
The test cases are ordered the same way in all the submissions. No information on the actual data, the output produced by the contestant solution or any other execution details will be given to the contestant.
It should be noted that the score reported in the feedback is only provisional. There are two ways how this score may change after it has been reported to the contestant:
Also, contestants can use the grading system to view the statistics on contestants’ scores for the competition tasks. For each task, a percentage of the total score among all contestants for this task, divided by the total score among all contestants for all tasks, will be shown.
Testing Interface is not available in IOI 2018. To test programs, contestants may use their workstations, or to submit to the grading system.
Contestants are allowed to print their solutions to the tasks, i.e., source code, writings, drawings, etc. Contestants are not allowed to print more than 10 pages at once. After a contestant requests that a document is printed, the support staff will deliver the printout to the contestant. Contestants should not leave their computers to find printouts. Printouts will be delivered as quickly as possible, though very large volumes may produce delays in delivery.
Contestants may ask the support staff for assistance at any time. Contestants may use the system to call for the support staff. In case the system is not available, contestants may raise their hands to call for the support staff. Contestants should not leave their seats until allowed to do so by the support staff. The staff members will not answer questions about the competition tasks, but will deliver Clarification Request Forms and printouts, help locate toilets and refreshments, and assist with computer and network problems.
Contestants should never attempt to fix or debug or even check computer or network problems themselves; instead, they should ask for assistance.
Three warnings will be given at 15 minutes, 5 minutes, and 1 minute before the end of the competition. Each warning will be given by an audible signal. The end of the competition will be announced both verbally and by an audible signal. At the announcement ending the competition, contestants must immediately stop working and wait at their desks without touching the computers or anything on their desks. An additional announcement will be made instructing them to leave their tables and exit the competition room.
At the end of the first competition, any previously submitted items a contestant would like to use during the second competition should be left at the workstation. All other items should be taken out of the competition hall, including printouts. At the end of the second competition, contestants should remove all personal items including their mascots and dictionaries or any other previously submitted item; nothing should be left behind.
Contestants must use only the workstation and account assigned to them on each competition day. In particular:
All of the above actions are considered cheating, and may result in disqualification.
Submitted solutions are evaluated using data which conform to the specification given in the problem statement, but which are hidden from contestants during the competition.
Provisional grades, based on these tests, are available immediately to contestants. In the event of an error with the test data, the Scientific Committee will attempt to, but is not obligated to follow the following process:
This hidden data will be made available electronically in the competition area during the scheduled time for analysis after each competition. Contestants and team leaders may use the contestant’s workstations to verify that the grades are assessed correctly.
A Team Leader may file an appeal by completing an Appeal Form, and submitting it to the Scientific Committee at least 30 minutes prior to the final GA meeting of that competition day. The GA will be informed of where Appeal Forms can be collected, and where they can submit them to the Scientific Committee. Every appeal will be reviewed by the Scientific Committee and the team leader will be notified of 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 every submission of a task should be re-graded and re-scored as a consequence of an accepted appeal, 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 published, new results will be published again. Score changes resulting from this are not appealable.