Koduesi is an algorithm programming competition.

In order to compete, you need to register for Koduesi account.
You can register with local account or register using another service like:

  • Facebook,
  • Google,
  • Mircosoft,
  • Twitter.

To practice our coding problems go to practice section. In this section you can view and practice problems intended for practice and problem of past contests.

To compete in contest, you need to login during active contest.
Go to contest section and select the active contest. After selecting the contest you will enter the Contest Arena.

Currently we support 8 programming languages. All compilers run under linux ubuntu server.
Here is a list of supported languages and compilers used to compile solutions:

Language Compiler Command Version of compiler
Pascal fpc 2.4.4-3.1
C gcc 4.6.3
C++ g++ 4.6.3
Java javac 1.7.0_25
Python python 2.7.3
PHP php 2.3.0
Perl perl 5.14.2
C# mcs
Python3 python3.5 3.5.2


The compiler that is used is different than the one used in Dev-C++ or Codeblocks in Windows environment. If you are able, use a GNU Linux environment.


All solution must have a static main method in a Main class. You can have more classes but you must have one public class named "Main", otherwise the solution will have Compile error.


The compiler is not Microsoft C#.NET, but Mono. Make sure you read the documentation about some parts in the compiler or the framework missing. Dynamic structures, lambda expressions and other C# modern functionalities are generally supported, but try to avoid them and be careful while using them.

Here is a list of solution status and their meaning:

The judge is so busy that it can't judge your submit at the moment, usually you just need to wait a minute and your submit will be judged.
The test data's has been updated, and the submit will be judged again.
Assign to judge
The solution has just started to be judge by one of the judges.
The judge is compiling your source code.
Running judging
Your code is running and being judging by the judge.
OK! Your program is correct!
Presentation error
Your output format is not exactly the same as the judge's output, although your answer to the problem is correct. Check your output for spaces, blank lines, etc against the problem output specification.
Wrong answer
Correct solution not reached for the inputs. The inputs and outputs that we use to test the programs are not public (it is recommendable to get accustomed to a true contest dynamic ;-).
Time limit
Your program has exceeded the time limit of the problem.
Memory limit
Your program tried to use more memory than the judge default settings.
Output limit
Your program tried to write too much information. This usually occurs if it goes into a infinite loop. Currently the output limit is 2M bytes.
Runtime error
During the running time of the solution an error has occurred. Click the status link to see the actual error message.
Compile error
The compiler (gcc, g++, javac, etc) could not compile your solution. Click the status link to see the actual error message.

The calculation of user rating is done by sum of problems level that user has solved. If the rating is same, the user that have less submition will have better place.

The ranking on contest is done as follows:

  • The user how has more solved problems is rank higher.
  • If users have same number of solved problems then the ranking is done by the time. Time is the sum of times of solved problems and the sum of penalty time.
  • If users have same number of solved problems and same time, ranking is done by count of wrong submition. The user with less wrong submition is rank higher.

Penalty in time - for every wrong submition user gets time penalty of 5 minutes. The penalty for particular problem is added to total time if user has solved that problem.