This is a practical hands-on course that is intended for students who are interested in competitive programming and algorithmic challenges. During this course, you will learn how to solve algorithmic programming challenges, both individually and as a team.
Students are expected to have a working knowledge of computer programming, algorithms, and data structures, and preferably some practical experience with C or C++ programming languages. There is a prerequisite test that you will need to solve before the first meeting (more information coming soon).
We will meet every Saturday at noon in the Maari building and organise a mini-contest. During the course, you will also take part in NCPC, the Nordic Collegiate Programming Contest.
We will use Competitive Programmer's Handbook by Antti Laaksonen. Additional material will be posted on Slack.
The course is organised by Jukka Suomela, and our course assistants are Miska Kananen and Henrik Lievonen. To contact the course staff, please use our Slack chat if possible.
The grading is pass/fail.
You will get 2 credits by taking successfully part in at least 5 meetings during period I. Any of the following counts as a successful participation:
- You solve at least 2 problems during the meeting.
- You solve at least 1 problem during the meeting and at least 2 additional problems during the following week.
NCPC counts as one meeting. If you miss some meetings, you can also participate remotely.
It is possible to get more credits if you continue during period II or participate in the NWERC contest or other programming contests during the autumn. If you are interested in the extended version (3–5 credits) of this course, please contact the lecturer in advance.