Frequently Asked Questions
Here, you will find answers to some questions we received by email.
We will regularly update this page with new information.
If you have a question that is not answered here, please
mail to email@example.com.
1. What happens if my program exceeds the time limit ?
2. Is the time limit with respect to CPU time or real elapsed time ?
3. Can my program continue its calculations during the opponent's turn ?
4. Can my program find out how much time it has left for the rest of the game ?
5. Is there a limit for the size of my program source ?
6. How long does it take to verify a new submission ?
7. Can I create an extra account to play with multiple programs in the same contest ? (NO!)
Q: What happens if my program exceeds the time limit ?
The game will be aborted.
Your program will lose this game, the other program wins.
Additionally, the aborted game counts as an 'irregular loss'.
The total number of irregular losses is used to rank programs that
have the same number of normal contest points; the program with
less irregular losses has a better rank.
Q: Is the time limit with respect to CPU time or real elapsed time ?
The time limit is with respect to the real time spent by your program
to select a move (the wall clock time).
We don't specifically look at the time spent on actual CPU calculations.
Q: Can my program continue its calculations during the opponent's turn ?
No, it is not possible to continue your calculations in the turn of
your opponent (thinking in the time of your opponent).
While your opponent is thinking, your program is temporarily suspended.
Q: Can my program find out how much time it has left for the rest of the game ?
Yes, but this is a little tricky.
We don't really recommend this, unless you feel sure that you need it
to improve your program.
It is possible to make very strong player programs without using
all available time to the last bit.
If you really want your program to do time measurements,
you can use the following trick.
Read the system clock just after reading the input, and again just
before writing your output. The difference between these clock values
is the amount of time you used for your move.
Note that you will find a slightly lower time than the CodeCup system,
because reading and writing the moves also takes some time.
You will have to compensate for this by adding a little extra time.
Make sure that you read the clock after reading your opponent's
move (to avoid including your opponent's time) and again before
writing your own move (otherwise the CodeCup system may suspend your program
before you get a chance to read the clock).
To read the system clock, you can use the GetTime function
in Pascal, the gettimeofday function in C, or the
Date.getTime function in Java.
Q: Is there a limit for the size of my program source ?
Yes. Your program source file must not be larger than 1,474,560 bytes
(the size of a floppy disk).
Q: How long does it take to verify a new submission ?
After submitting a new program to the system, you will usually
see a verification result within 10 minutes.
It may take longer if the system is very busy.
Q: Can I create an extra account to play with multiple programs in the same contest ?
It is definitely not allowed to have more than one version of your program
in the contest at the same time.
It is (of course) allowed to submit new versions of your program at any time,
since such new versions will automatically replace your previous
In general, it is never allowed (or necessary) for one physical person to create multiple CodeCup accounts.
Please contact us (firstname.lastname@example.org)
if you think that a new account is necessary.