Skip to content

T-414-ÁFLV: A Competitive Programming Course (2016 edition)

We will be holding our course about Competitive Programming for the second time during the three weeks from April 25th to May 13th. The format will be similar as before, but hopefully with a fresh set of problems.

Note: The course material is now accessible on Github. Contributions are welcome.
Warmup problems
Lecture 1: Introduction
Lecture 2: Data structures and libraries
Lecture 3: Data structures
Lecture 4: Problem solving paradigms
Lecture 5: Greedy algorithms
Problem session 1
Lecture 6: Dynamic programming
Lecture 7: Unweighted graphs
Lecture 8: Graphs
Lecture 9: Mathematics
Problem session 2
Lecture 10: Network flow
Lecture 11: Strings
Lecture 12: Geometry
Final exam

CC BY 4.0 This work is licensed under a Creative Commons Attribution 4.0 International License.

Published inCompetitive Programming


  1. 16 16

    oh! so excited!!!!!!!!!!!!!

  2. Bhishma Bhishma

    Is there a discussion forum available , where we can ask queries ?

    • My students and I are using Piazza, but I don’t think it would be appropriate to invite non-students to join that particular forum. I guess we could use the Codeforces post or this page, at least temporarily. If someone wants to create something externally, that might be cool as well.

  3. Bhishma Bhishma

    How to implement the move operation in the problem Almost Union-Find

  4. Norbert Madarasz Norbert Madarasz


    Is there going to be a subsequent session?
    Unfortunately I missed this one…


    • We haven’t made any plans yet. But this course is intended to be used for self-study, so you should be able to study from home, whenever you see fit, at your own pace.

  5. Kitihounel Kitihounel

    Hi. Very nice and useful course. My friends and me use it to prepare our ICPC national and regional contests.
    A little contribution. In the introduction chapter when you present how to represent sets with integers, you use this to get the complement of a subset : ~x & ((1 << n) – 1)
    I think one can simple use: x ^ ((1 << n) – 1)

Leave a Reply

Your email address will not be published. Required fields are marked *