Welcome to TUMjudge!

This page contains basic information regarding this TUMjudge. If you never worked with the TUMjudge before we recommend you to read this manual first.

Login

The TUMjudge requires you to login prior to submitting work. Your username and password is the same as in the Rechnerhalle, the login works via the LDAP protocol. Reminder: The Rechnerhalle username is the part before the @ in your @in.tum.de email address.This also means that we are not responsible for your password. If you lose it, please contact the RBG, not us. If you have several @in.tum.de addresses any of them will work. However, make sure that you use the same address for registration and login.

Judge

We use a fork of the official DOMjudge system that is also used in contests like the ICPC. Some impressions of the systems are given in the following images.

Problem Statements

Most problems that you will find here follow an overall structure. They contain:

Submitting Solutions

Solutions can be submitted from your dashboard which is available under home once you are logged in. In the left column click Select file... to select the file(s) for submission. TUMjudge will try to determine the problem and language from the base and extension of the filename respectively. If the automatic recognition fails select the appropriate values using the dropdown menues below the file selection. Filenames must start with an alphanumerical character and may contain only alphanumerical characters, - and _.

After you hit the submit button and confirm the submission, you will be redirected back to your submission list page. On this page, a message will be displayed indicating that your submission was successful and is now present in the list on the left hand side. An error message will be displayed if something went wrong.

Please note that you have to submit the source code of your program, not a compiled program or the output of your program. Your submission will be judged fully automated. Keep in mind that the sample data you receive in the problem statement is merely a fraction of the complete set of sample cases which is kept secret. This means that you have to think about special/corner cases that could be contained in the secret inputs, for example a graph without any edges or containing multiedges.

Viewing the results of submissions

The top of the page shows your current position in the scoreboard as well as which problems you attempted and solved.

The left column of your dashboard shows an overview of your submissions. It contains the submission time, programming language, problem and status of the submission. To view the output your submission on the sample input from the problem set click on your submission.

To view the public scoreboard use the link scoreboard in the top menu. It displays the scores of all participants that agreed to have their results publicly available. The scoreboard contains one column for each problem. The colors of the cells indicate the following:

Each cell contains the number of submissions for this problem and if the problem was solved, the time of the first correct submission in minutes since the problem set was handed out. The scoreboard is ordered by the number of problems solved, ties are broken using a score that is computed as follows: For each solved problem, you receive a penalty score. This score is equal to the time of the first correct submission in minutes since the problem set was handed out plus 20 for each failed attempt. The total penalty score is the sum of penalty scores for all solved problems. Both the total number of correct submissions and the current total penalty score can be found in the colume Score.

The score board is visible to everyone, if you want your account NOT to be visible on the scoreboard, please pick invisible during the registration.

Clarifications

All questions regarding the problem sets have to be sent through the clarification system, not via email. The clarification overview can be found in the right column on your dashboard which is available under home in the top menu. Both clarification replies from the jury and requests sent by you are displayed there.

In order to submit new clarifications click the button request clarification at the bottom of the dashboard. This request is only readable for the jury which will respond as soon as possible. Answers that are relevant for everyone will be sent to everyone.

Submissions

Programming Languages

You will be allowed to submit solutions in C++, Java or Python 2. Solutions have to read all input from standard in and write all output to standard out (also known as console). You will never have to open (other) files.

Compiling

Your program will be compiled on a computer running Linux. All submitted source files will be passed to the compiler which generates a single program to run out of them; for languages where this is relevant, the first specified file will be considered the main source file.

Using a different compiler or operating system than the judging system should not be a problem. Be careful however, not to use any special compiler and/or system specific things (you are able to check compiler errors on your dashboard). The compile settings can be found below:

We use the following versions:

Sample Code:

Testing

After your program has compiled successfully it will be executed and its output compared to the expected output. Before comparing the output, the exit status of your program is checked: if your program gives the correct answer, but exits with a non-zero exit code, the result will be a run-error! There are some restrictions during execution. If your program violates these, it will also be aborted with a run-error, see section Restrictions. The output of you problem has to match the specifications given on the problem set. Mostly, it has to match the solution exactly; in case of problem statements which do not have unique output (e.g. with floating point answers), the problem set will contain information about the expected solution.

Possible Results

Once you upload your code to our server, there are several possible outcomes that TUMjudge could tell you.

Restrictions

In order to keep the judging system stable, prevent abuse and give everyone clear and equal environments, there are some restrictions to which all submissions are subjected:

Furthermore, any tampering with the system will result in penalties. Please also keep the number of your submissions at an acceptable level as to not unnecessarily slow judging for all participants.

Do not fool the Judge

Do not fool with the system. Do not try to do anything you are obviously not intended to do, for instance opening files, using network connections, hacking our system etc. Submissions with such bevaviour will be killed by the judge and we may remove points from your score or apply other penalties. Also, do not share code. You are free to discuss algorithms and problems, but please do not share solutions or code lines.
Have fun!

TUMjudge version 5.1.2.1, a fork of DOMjudge version 5.1.2 Imprint / Changelog