FAQ


How to apply for participation in the Olympiad?

To apply for olympiad, you need to fill in form for olympiad registration.

Can non school students participate in the Olympiad?

Anyone interested can participate in the Olympiad, but only school students are invited to the final stage. Non school students should select unofficial participation in registration form.

I forgot my password, what should I do?

Use the password recovery link on the login page of the website. A new password will be sent to the email address you provided during registration.

How to submit solutions for testing?

Submit the source code of the program in one of the allowed programming languages for testing. The testing process usually takes 1-3 minutes, but occasionally, it may take longer due to technical reasons. All solutions submitted for testing will be tested eventually.

What should I choose for the “Desired line ending type” option?

Participants’ solutions are checked in a Linux OS, where line endings are encoded with a single byte with a hexadecimal ASCII code of 0A. In most cases (if you use standard programming language functions for reading data), you don’t need to choose anything, and input data will be read correctly. However, in some situations, participant solutions may read input data character by character, determining line endings based on the ASCII code values of the read characters. In this case, if a participant’s solution, developed for the Windows system, assumes that line endings are encoded with two bytes (0D 0A), the solution may not work correctly in the testing system. To set line endings in the input data as in the Windows system, you need to set the value of this parameter to CRLF (Windows/DOS).

Why did the solution pass all tests but received less than 100 points?

Pay attention to the problem statements. Testing on some tests (offline tests) is done in offline mode and you will only know the results of this testing after the end of the qualifying stage. Therefore, it is essential to focus on testing your solutions.

What does Incorrect output format mean in the verification protocol?

This means that the program’s output does not match what is specified in the problem statement. For example, according to the problem statement, the program should output one number, but it outputs two, or it outputs additional debug messages, or it doesn’t output anything at all. The most common reasons for this are the presence of additional (debug) message outputs, specifying the wrong output file name, submitting a solution for a different problem, or an error in the program.

What does Runtime Error mean in the verification protocol?

This means that the program performs an incorrect operation during execution. Possible causes of runtime errors (the list is not exhaustive):

  • Division by 0 or taking the remainder of 0.
  • Variable overflow.
  • Going beyond the array boundaries.
  • Invalid argument value when using mathematical functions (e.g., sqrt(-1) or asin(2)).
  • Errors in working with pointers or dynamic memory.
  • Stack overflow, in Python programs – exceeding the maximum allowed recursion depth.
  • Incorrectly specified file names for file input-output.
  • Errors in the program text in interpreted languages (Python, PHP, Perl).

What does “Security Violation” mean in the verification protocol?

This means that the program performs an action prohibited by the security settings of the testing system. Typically, this occurs when attempting to execute a system call, such as system("pause") in C or C++ programs.

Why does the program not pass the tests from the statement, although it works correctly on my computer?

Usually, the most likely reasons for this are:

  1. The program reads a line using standard programming language functions, such as getline in C/C++, input in Python, while the desired line ending type is set to CRLF during program submission. In this case, during testing, the program may read an extra byte with a code of 0D, which in the Linux operating system will not be interpreted as a newline character. Resubmit the program without setting the “Desired line ending type” parameter when submitting the solution.
  2. Conversely, the program reads data character by character, analyzing line endings directly in the program by comparing the values of the read characters with the codes 0D and 0A. In such a reading technology of input data, it is necessary to specify the desired line ending type as CRLF when submitting the program.
  3. The program reads data from a file, and the data is read character by character until the end of the file or as strings. In the testing system, the last line of input data ends with a newline character, whereas, during debugging on the participant’s computer, input files without a newline character at the end of the file are used. Add a newline character to the end of the test file and retest the program on your computer.
  4. The program contains an error that causes the program to behave differently on different computers. Usually, such an error is the lack of variable initialization or going beyond the array bounds.

I have a question about the problem statement or testing, how do I ask it?

Questions about the problem statements or testing should be asked using the “Submit a question” link on your personal page in the testing system. The jury usually answers questions within one to two days, and in complex cases, the answer may take several days.

Why did my scores decrease after submitting a new solution?

According to the rules of the remote stage, only the last solution submitted for each problem is used for total score, regardless of whether it passes the tests from the statement and how many points it scores.

Why can’t I download the source code of submitted solutions?

This is done to prevent other participants from accessing your solutions if, for example, you logged into the testing system on someone else’s computer and then forgot to log out. In this case, the jury may disqualify the author of the solution, even if they wrote the solution honestly and independently.

I submitted a solution, then corrected it, and received a lower score (I accidentally deleted the solution file). How can I get the source code of the previously submitted solution?

Participants in the Olympiad must take care of the safety of their files and various solution variants. We recommend saving all intermediate versions of your solutions if they contain significant changes. Also, consider using “cloud” data storage services.