Attention: This page is outdated! These are the rules that were in place in 2021 and are superseeded by newer editions of the EGOI
Due to the ongoing pandemic, EGOI 2021 will be held fully online, with participants competing from their respective countries. To maintain the integrity of the competition, the host asks the teams to assist in enforcing the competition rules. The following proctoring rules are introduced.
Each competition site, regardless of the number of participants, requires at least two proctors, whose role is to ensure that the contest rules are observed and a fair competition is held. This includes, but is not limited to:
- ensuring that only the mandated hardware and software is used
- ensuring that no disallowed communication is held
- ensuring that participants do not use any forbidden sources of information in the form of printed or hand-written notes, books or Internet resources
The proctors should organise a suitable competition area and provide the contestants with appropriate supplies (writing papers, printing, snacks …). They are expected to be the first point of contact for the contestants for any technical issues. The proctors will also be in contact with the organising committee to ensure that the contest starts and ends according to the schedule and relay any important announcements. It is highly encouraged to organise a joint competition site for all the participants of a single country.
At least one of the proctors must be present physically at the contest site. This proctor should not have any conflict of interest with the performance of the participant, e.g. contestant’s relatives or the main coach of the contestant.
The General Assembly members who participate in any of the translation sessions must not communicate with the contestants prior to the contest start. Therefore, each site requires at least one proctor to help with the setup who did not participate in the translation session.
If you have any issues following the contest rules due to COVID-19, please contact the EGOI organizers.
To allow the organising committee to investigate in case of any disputes or a justified suspicion, we kindly ask the organising site to record a video of the competition hall. The recording(s) should be able to, as a whole, maintain the identity of the contestants throughout the contest and record audio in the competition hall. For example, it is sufficient for the contestant to stand up and wave at the camera at their workstation prior to the start of the contest. You will be asked to upload these recordings to a server residing in Germany and run by the EGOI organising committee. Note that the quality of these recordings is not overly important, as the videos will not be publicly shared.
These videos will be deleted latest 14 days after the contest ends. They may only be viewed by the following people:
- the EGOI chair
- a single dedicated person from the Technical Committee
- a single dedicated person from the Scientific Committee
The solution provided by the contestant must be contained in one source file as specified in the task statement.
As the 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 the 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.
There will be two competition days. On each day contestants will be given four tasks to solve 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 EGOI. Contestants may bring printed solutions to the practice tasks, on paper only, during the Practice Competition.
Competition Equipment and Environment
Contestants will be provided with a virtual machine to use on their personal computer, or on a computer provided by their country delegation. Please refer to the Contest Environment page for more detail. This virtual machine must be run at full-screen mode at all times, except when solving a technical issue as instructed by the Technical Committee, in the presence of a proctor.
Each contestant will receive the official English version of tasks 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 also be provided. Each contestant will have online access to the official English version of tasks and all task translations in electronic format (PDF).
If the contestants are participating from a hub organised by their country, it is the responsibility of the hub organisers to arrange for printing of the task statements as needed.
In the competition site, the proctors should provide blank paper and writing tools. 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):
- reasonable jewelry,
- writing utensils,
- snacks (see the details below),
- necessary medication and toiletries,
- small mascots,
- English dictionaries.
Any attempts to bring any other items unlisted above into the competition rooms are considered cheating. In particular, the following items are strictly prohibited in the competitions:
- any additional computing equipment (e.g., keyboards, mice, calculators, laptops, tablets),
- any books, manuals, written or printed materials,
- any data storage medium (e.g., CD-ROMs, USB drives, flash cards, micro-drives),
- any communication devices (e.g., mobile phones, radios of any sort),
- watches of any type.
For the case of snacks, the competition site organisers shall provide all contestants with some amount of snacks. In cases when a contestant would still like to bring in snacks, the contestant should make sure that the snacks are not noisy or smelly, and are not disturbing for other contestants in any other way. In case of complaints from other contestants during the contest, the snack might be removed.
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).
Assistance and Clarification
Contestants may ask the support staff for assistance at any time. Contestants may use the system to call for the support staff for task related issues, and ask their proctor in case of technical difficulties.
During the competition, contestants may submit Assistance and Clarification Requests concerning competition tasks, rules, and/or grading. Contestants may submit Assistance and Clarification Requests by using the grading system. Contestants will receive a reply from the Scientific Committee via the grading system.
Questions may be expressed either in the contestant’s preferred language or in English. But, on the grading system, contestants might not be 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 an answer to their questions.
Contestants should phrase their task-related 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 confusion depending on the native language of the contestants. Instead, positive questions of the form “Is it true that…?” are recommended.
Contestants are free to phrase their technical or contest related issues in any form. These issues/questions should not be related to tasks at all. Such questions will be fully clarified.
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.
Grading and evaluation take place on the grading system, which provides a similar execution environment to that of the contestant workstation. However, the software installed in contestants’ workstations and grading workstations are not identical. Grading workstations have programs required for monitoring and grading systems.
Contestants must submit their solutions for tasks by using the grading system. To avoid overloading the grading system, contestants may submit at most 50 solutions for each task.
Each submitted source program must be written in C++, Java or Python, 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 each submission, the score for each test case is calculated according to the submitted program or output.
- For each submission, the score for each subtask is the minimum of the scores for the test cases in the subtask.
- The final score for each subtask is the maximum of the scores for this subtask across all submissions.
- The final score for each task is the sum of the scores for its subtasks.
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 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:
- Output is correct
- Output isn’t correct
- Execution timed out
- Execution killed (could be triggered by violating memory limits)
- Execution failed because the return code was nonzero
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:
- Due to a successful appeal after the contest.
- In some cases, the contestants’ submissions may be re-evaluated. This re-evaluation may sometimes lead to a different total score (e.g., if a solution behaves nondeterministically or runs very close to the time or memory limit). In such cases, the final score for the submission is the score for its latest re-evaluation. This change in scoring cannot be appealed. Note that the final score for each subtask is still the maximum score over all submissions.
Ending the Competition
The remaining time of the competition will be displayed in the grading system. Should a contest extension occur, it will be announced in the grading system in the form of a notification. At the end of the competition, the grading system will stop receiving submissions and the contestants’ screens will automatically lock. The virtual machines must be kept running in full-screen mode until the Technical Committee authorizes their shutdown.
Contestants must use only the virtual machine and account assigned to them on each competition day. In particular:
- contestants must not attempt to submit illegal programs, nor try to tamper with or compromise the grading system;
- contestants must not attempt to gain access to root or any account other than the one assigned to them;
- contestants must not attempt to store information in any part of the file system other than the home directory for their account or the /tmp directory;
- contestants must not use any other computing device than the one assigned to them;
- contestants must not attempt to access any machine on the network or the Internet, other than to access the contest system for usual purposes (e.g. submitting tasks, viewing submission results, downloading sample data, submitting Clarification Requests), call for the support staff through the system; even running a single “ping” command is strictly prohibited and may lead to disqualification;
- contestants must not attempt to reboot or alter the boot sequence of any workstation;
- contestants must not communicate with other people during the competition, other than the support staff, and/or Scientific/Technical Committee members
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:
- Every attempt will be made to fix test data and regrade all solutions as quickly as possible.
- Additional test data may be added only when the grading data does not meet the intention of the Scientific Committee from before the contest.
- Late detections of issues, especially during the last 2 hours of the contest, may be grounds for extending the length of the contest.
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, the new results will be published again. Score changes resulting from this are not appealable.