Hide menu

TDDD95 Algorithmic Problem Solving

Course information


To automatically check whether your programs are correct this course uses the automatic judge Kattis. It allows you to submit programs to check whether they solve a partiular problem almost immediately. To receive points for your submissions, you must register for the course in Kattis by pressing "I am a student taking this course and I want to register for it on Kattis".

The course page in Kattis

As a student at Linköping University you should be able to log in to Kattis using your LIUID and associated password. If this does not work, please contact the examiner.

Kattis is continually being improved, but has so far been very reliable. There is some limited documentation, which should answer most of the questions you have. There are also two tutorials that will show you how to get started. We recommend that you go through these before you start the course. Advice:

  • If you use Java, then the class with the main method must be public.
  • IO in C++ using cin/cout in iostream can be surprisingly slow for problems involving a lot of IO (~1 MB or more). The Kattis help pages has information on how to alleviate this without having to use the more cumbersome C stdio routines.
  • IO in Java is also quite slow if handled incorrectly, but Kattis provides a special IO class that can help you. The Kattis help pages has more information.

Programming languages

You are free to use any programming language Kattis supports. However, we recommend that you use either C++ or Java, as we cannot guarantee that all problems are solvable using other languages. In particular, Python should be fine for most problems, but there might be problems where Python is inherently too slow. If you choose any other language the the three already mentioned, we cannot provide you with any language-related assistance.

Page responsible: Fredrik Heintz
Last updated: 2021-01-17