Skip to content

jeremykvlim/kattis

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 

Repository files navigation

kattis

My solutions to Kattis problems. Solutions are named "problemname".<languagefilename>. To find the problem statement, please go to:

https://nus.kattis.com/problems/"problemname" or https://open.kattis.com/problems/"problemname"


Problems are grouped by NUS course categorizations and a separate open category for non-NUS course problems. Some courses share several problems, you might be able to find them under any one of the categories. I generally use C++ unless the NUS course requires otherwise (language requirements found below). I switch to Python if I require big integer operations or if the solution is much shorter and simpler implementation-wise.

  • NUS:

    • CS2040/CS2040C/CS2040DE/CS2040S/IT5003 Data Structures & Algorithms: C++ (CS2040C)/Java (CS2040, CS2040DE, CS2040S)/Python (IT5003)

    • CS3230 Design and Analysis of Algorithms: C++/Java/Python

    • CS3233 Competitive Programming: C/C++/Java/Kotlin/Python

    • CS4234 Optimization Algorithms: C++/Java/Python


Kattis compiles using C++ 23 for C++, Java 21 for Java and Python 3.10 for Python.

Problems have to be solved using base programming language libraries or self-coded structures. External libraries, such as Boost for C++, Guava for Java, NumPy for Python 3 and others are not available. However, you are allowed to attach multiple files in one submission, although I never bothered.


Many of these solutions were implemented after reading the editorials, and I suggest you to do the same if you find yourself stuck. If you have any questions about a particular solution, please contact me at [email protected].