Rules of the final stage


What is allowed?

Participants can bring their own food, pens, and paper for notes.

What is not allowed?

During the final stage, it is forbidden to use any written sources of information: printouts, books, notes.

It is prohibited to use of artificial intelligence, language models, and any software tools that themselves generate solution code is prohibited.

It is prohibited to use any other electronic devices, in particular phones, e-readers, tablets, watches, and other computers (laptops).

It is prohibited to connect external data storage devices such as flash drives or external hard drives to a computer or laptop.

It is forbidden to use any sound playback devices, in particular, participants cannot use headphones, even if they are not connected anywhere. It is forbidden to keep a phone or device with similar functionality in network sharing mode.

Network access is prohibited (primarily the Internet, but the rule also applies to local networks) for anything other than accessing the Olympiad website and the testing system.

It is prohibited to connect to any networks other than those provided by the venue’s organizers.

It is not allowed to bring your own keyboards and mouse to the venue. The organizers at the 1C venue will provide keyboard and mouse to all participants.

Full rules

The final stage contests will take place on March 6 and 7. All participants who scored at least 420 points in the qualification stage are admitted to the final stage.

During the final stage of the Olympiad, participants are offered 4 tasks in each of the two contests. The jury may make changes to the task statements and scoring, add and modify tests, retest solutions.

The solution to each problem is the source code of a program written in one of the available programming languages (a list of compilers and compilation options is available in the testing system). Problems may fall into one of three types:

  • Standard problems. For these problems, the participant is required to submit a program written in one of the available programming languages. The program should read data from standard input, output the result to standard output, or read data from the file input.txt and output the result to the file output.txt. The program must follow the input and output format requirements.

  • Interactive problems. For these problems, the participant is required to submit a program written in one of the available programming languages. The participant’s program interacts with the jury’s program by reading data from standard input and writing data to standard output. The program may involve multiple stages of input or output. At each stage, the data passed to the program may depend on the participant’s output from previous stages. The program must follow the interaction format described in the problem statement.

  • Grader problems. In these problems, the participant is required to write code that implements one or more functions to solve the problem. These functions will be compiled along with the jury’s program (the grader), and they will be called from the grader. The functions must meet the requirements specified in the problem statement. During the execution of the functions, the program is not allowed to read from or write to the standard input/output streams or to arbitrary files. There may be additional restrictions on the programming languages that can be used to implement the solution.

Programs are tested using an automated testing system on a fixed set of test cases. The program must meet the time and memory usage constraints.

Each task is scored from 0 to 100 points. Points are awarded based on passed test groups across all of a participant’s submissions. After submitting a solution for testing, the participant may receive results only for visible test groups. The remaining test groups belong are the test groups with offline testing, and the results for these tests become available only after the end of the competition. While testing, tests whose results do not affect the final score for the task may be skipped.

The score for a task is the sum of the points earned across all test groups. The score for each test group is equal to the maximum score achieved for that test group across all submitted solutions. The participant’s final result in the olympiad is the sum of their scores across all tasks.

The reference solutions for the olympiad tasks are written in C++. The jury does not guarantee that tasks can be fully completed (with a maximum score) using other programming languages.

Participants can ask questions about task conditions and their verification through the testing system by sending a message to the jury.

Each participant can submit no more than 500 solutions during the tour, the size of one solution must not exceed 64 KiB, the total size of all submitted solutions must not exceed 2 MiB. The source code of solutions in the testing system will not be available for viewing.