Guide to Competitive Programming

by Antti Laaksonen · 2nd Edition · 2020

A concise yet comprehensive guide to competitive programming. Covers essential algorithms, optimization techniques, and contest strategies.

455Extracted Problems
76Chapters
0Linked to DB
455Book Total
CompetitiveAlgorithmsCSESOptimization
455 shown
  • 1.1Implement fast I/O for your language
    IO
    Easy
    1.2Analyze time complexity of nested loops
    BigO
    Easy
    1-3Exercise 1.3
    Medium
    1-4Exercise 1.4
    Medium
    1-5Exercise 1.5
    Hard
    1-6Exercise 1.6
    Easy
  • 2.1Implement range sum with Fenwick tree
    FenwickTree
    Medium
    2.2Implement range minimum with segment tree
    SegTree
    Medium
    2.3Implement union-find with path compression
    UnionFind
    Easy
    2-4Exercise 2.4
    Medium
    2-5Exercise 2.5
    Hard
    2-6Exercise 2.6
    Easy
  • 3.1Implement Mo's algorithm for range queries
    Mo
    Hard
    3.2SQRT decomposition on array
    SqrtDecomp
    Medium
    3.3Implement implicit treap
    Treap
    Hard
    3-4Exercise 3.4
    Medium
    3-5Exercise 3.5
    Hard
    3-6Exercise 3.6
    Easy
  • 4.1Implement Dijkstra with priority queue
    GraphDijkstra
    Medium
    4.2Find strongly connected components with Kosaraju
    GraphSCC
    Medium
    4.3Minimum spanning tree (Kruskal)
    GraphMST
    Medium
    4-4Exercise 4.4
    Medium
    4-5Exercise 4.5
    Hard
    4-6Exercise 4.6
    Easy
  • 5.1Lazy propagation on segment tree
    SegTreeLazyProp
    Hard
    5.2Range kth smallest with merge sort tree
    SegTree
    Hard
    5-3Exercise 5.3
    Medium
    5-4Exercise 5.4
    Medium
    5-5Exercise 5.5
    Hard
    5-6Exercise 5.6
    Easy
  • 6.1Convex hull trick for DP optimization
    DPCHT
    Hard
    6.2Divide-and-conquer DP optimization
    DPD&C
    Hard
    6-3Exercise 6.3
    Medium
    6-4Exercise 6.4
    Medium
    6-5Exercise 6.5
    Hard
    6-6Exercise 6.6
    Easy
  • 7.1Modular exponentiation
    Math
    Easy
    7.2Linear Diophantine equation with extended Euclid
    NumberTheory
    Medium
    7.3Matrix exponentiation for linear recurrences
    MatrixExp
    Medium
    7-4Exercise 7.4
    Medium
    7-5Exercise 7.5
    Hard
    7-6Exercise 7.6
    Easy
  • 8.1Implement Z-algorithm for pattern matching
    Strings
    Medium
    8.2Build and use suffix array
    StringsSuffixArray
    Hard
    8-3Exercise 8.3
    Medium
    8-4Exercise 8.4
    Medium
    8-5Exercise 8.5
    Hard
    8-6Exercise 8.6
    Easy
  • 9-1Number Theory Problem 1
    Easy
    9-2Number Theory Problem 2
    Easy
    9-3Number Theory Problem 3
    Medium
    9-4Number Theory Problem 4
    Medium
    9-5Number Theory Problem 5
    Hard
    9-6Number Theory Problem 6
    Easy
  • 10-1Game Theory Problem 1
    Easy
    10-2Game Theory Problem 2
    Easy
    10-3Game Theory Problem 3
    Medium
    10-4Game Theory Problem 4
    Medium
    10-5Game Theory Problem 5
    Hard
    10-6Exercise 10.6
    Easy
  • 11-1Number Theory Problem 1
    Easy
    11-2Number Theory Problem 2
    Easy
    11-3Number Theory Problem 3
    Medium
    11-4Number Theory Problem 4
    Medium
    11-5Number Theory Problem 5
    Hard
    11-6Number Theory Problem 6
    Easy
  • 12-1Game Theory Problem 1
    Easy
    12-2Game Theory Problem 2
    Easy
    12-3Game Theory Problem 3
    Medium
    12-4Game Theory Problem 4
    Medium
    12-5Game Theory Problem 5
    Hard
    12-6Exercise 12.6
    Easy
  • 13-1Number Theory Problem 1
    Easy
    13-2Number Theory Problem 2
    Easy
    13-3Number Theory Problem 3
    Medium
    13-4Number Theory Problem 4
    Medium
    13-5Number Theory Problem 5
    Hard
    13-6Number Theory Problem 6
    Easy
  • 14-1Game Theory Problem 1
    Easy
    14-2Game Theory Problem 2
    Easy
    14-3Game Theory Problem 3
    Medium
    14-4Game Theory Problem 4
    Medium
    14-5Game Theory Problem 5
    Hard
    14-6Exercise 14.6
    Easy
  • 15-1Number Theory Problem 1
    Easy
    15-2Number Theory Problem 2
    Easy
    15-3Number Theory Problem 3
    Medium
    15-4Number Theory Problem 4
    Medium
    15-5Number Theory Problem 5
    Hard
    15-6Number Theory Problem 6
    Easy
  • 16-1Game Theory Problem 1
    Easy
    16-2Game Theory Problem 2
    Easy
    16-3Game Theory Problem 3
    Medium
    16-4Game Theory Problem 4
    Medium
    16-5Game Theory Problem 5
    Hard
    16-6Exercise 16.6
    Easy
  • 17-1Number Theory Problem 1
    Easy
    17-2Number Theory Problem 2
    Easy
    17-3Number Theory Problem 3
    Medium
    17-4Number Theory Problem 4
    Medium
    17-5Number Theory Problem 5
    Hard
    17-6Number Theory Problem 6
    Easy
  • 18-1Game Theory Problem 1
    Easy
    18-2Game Theory Problem 2
    Easy
    18-3Game Theory Problem 3
    Medium
    18-4Game Theory Problem 4
    Medium
    18-5Game Theory Problem 5
    Hard
    18-6Exercise 18.6
    Easy
  • 19-1Number Theory Problem 1
    Easy
    19-2Number Theory Problem 2
    Easy
    19-3Number Theory Problem 3
    Medium
    19-4Number Theory Problem 4
    Medium
    19-5Number Theory Problem 5
    Hard
    19-6Number Theory Problem 6
    Easy
  • 20-1Game Theory Problem 1
    Easy
    20-2Game Theory Problem 2
    Easy
    20-3Game Theory Problem 3
    Medium
    20-4Game Theory Problem 4
    Medium
    20-5Game Theory Problem 5
    Hard
    20-6Exercise 20.6
    Easy
  • 21-1Number Theory Problem 1
    Easy
    21-2Number Theory Problem 2
    Easy
    21-3Number Theory Problem 3
    Medium
    21-4Number Theory Problem 4
    Medium
    21-5Number Theory Problem 5
    Hard
    21-6Number Theory Problem 6
    Easy
  • 22-1Game Theory Problem 1
    Easy
    22-2Game Theory Problem 2
    Easy
    22-3Game Theory Problem 3
    Medium
    22-4Game Theory Problem 4
    Medium
    22-5Game Theory Problem 5
    Hard
    22-6Exercise 22.6
    Easy
  • 23-1Number Theory Problem 1
    Easy
    23-2Number Theory Problem 2
    Easy
    23-3Number Theory Problem 3
    Medium
    23-4Number Theory Problem 4
    Medium
    23-5Number Theory Problem 5
    Hard
    23-6Number Theory Problem 6
    Easy
  • 24-1Game Theory Problem 1
    Easy
    24-2Game Theory Problem 2
    Easy
    24-3Game Theory Problem 3
    Medium
    24-4Game Theory Problem 4
    Medium
    24-5Game Theory Problem 5
    Hard
    24-6Exercise 24.6
    Easy
  • 25-1Number Theory Problem 1
    Easy
    25-2Number Theory Problem 2
    Easy
    25-3Number Theory Problem 3
    Medium
    25-4Number Theory Problem 4
    Medium
    25-5Number Theory Problem 5
    Hard
    25-6Number Theory Problem 6
    Easy
  • 26-1Game Theory Problem 1
    Easy
    26-2Game Theory Problem 2
    Easy
    26-3Game Theory Problem 3
    Medium
    26-4Game Theory Problem 4
    Medium
    26-5Game Theory Problem 5
    Hard
    26-6Exercise 26.6
    Easy
  • 27-1Number Theory Problem 1
    Easy
    27-2Number Theory Problem 2
    Easy
    27-3Number Theory Problem 3
    Medium
    27-4Number Theory Problem 4
    Medium
    27-5Number Theory Problem 5
    Hard
    27-6Number Theory Problem 6
    Easy
  • 28-1Game Theory Problem 1
    Easy
    28-2Game Theory Problem 2
    Easy
    28-3Game Theory Problem 3
    Medium
    28-4Game Theory Problem 4
    Medium
    28-5Game Theory Problem 5
    Hard
    28-6Exercise 28.6
    Easy
  • 29-1Number Theory Problem 1
    Easy
    29-2Number Theory Problem 2
    Easy
    29-3Number Theory Problem 3
    Medium
    29-4Number Theory Problem 4
    Medium
    29-5Number Theory Problem 5
    Hard
    29-6Number Theory Problem 6
    Easy
  • 30-1Game Theory Problem 1
    Easy
    30-2Game Theory Problem 2
    Easy
    30-3Game Theory Problem 3
    Medium
    30-4Game Theory Problem 4
    Medium
    30-5Game Theory Problem 5
    Hard
    30-6Exercise 30.6
    Easy
  • 31-1Number Theory Problem 1
    Easy
    31-2Number Theory Problem 2
    Easy
    31-3Number Theory Problem 3
    Medium
    31-4Number Theory Problem 4
    Medium
    31-5Number Theory Problem 5
    Hard
    31-6Number Theory Problem 6
    Easy
  • 32-1Game Theory Problem 1
    Easy
    32-2Game Theory Problem 2
    Easy
    32-3Game Theory Problem 3
    Medium
    32-4Game Theory Problem 4
    Medium
    32-5Game Theory Problem 5
    Hard
    32-6Exercise 32.6
    Easy
  • 33-1Number Theory Problem 1
    Easy
    33-2Number Theory Problem 2
    Easy
    33-3Number Theory Problem 3
    Medium
    33-4Number Theory Problem 4
    Medium
    33-5Number Theory Problem 5
    Hard
    33-6Number Theory Problem 6
    Easy
  • 34-1Game Theory Problem 1
    Easy
    34-2Game Theory Problem 2
    Easy
    34-3Game Theory Problem 3
    Medium
    34-4Game Theory Problem 4
    Medium
    34-5Game Theory Problem 5
    Hard
    34-6Exercise 34.6
    Easy
  • 35-1Number Theory Problem 1
    Easy
    35-2Number Theory Problem 2
    Easy
    35-3Number Theory Problem 3
    Medium
    35-4Number Theory Problem 4
    Medium
    35-5Number Theory Problem 5
    Hard
    35-6Number Theory Problem 6
    Easy
  • 36-1Game Theory Problem 1
    Easy
    36-2Game Theory Problem 2
    Easy
    36-3Game Theory Problem 3
    Medium
    36-4Game Theory Problem 4
    Medium
    36-5Game Theory Problem 5
    Hard
    36-6Exercise 36.6
    Easy
  • 37-1Number Theory Problem 1
    Easy
    37-2Number Theory Problem 2
    Easy
    37-3Number Theory Problem 3
    Medium
    37-4Number Theory Problem 4
    Medium
    37-5Number Theory Problem 5
    Hard
    37-6Number Theory Problem 6
    Easy
  • 38-1Game Theory Problem 1
    Easy
    38-2Game Theory Problem 2
    Easy
    38-3Game Theory Problem 3
    Medium
    38-4Game Theory Problem 4
    Medium
    38-5Game Theory Problem 5
    Hard
    38-6Exercise 38.6
    Easy
  • 39-1Number Theory Problem 1
    Easy
    39-2Number Theory Problem 2
    Easy
    39-3Number Theory Problem 3
    Medium
    39-4Number Theory Problem 4
    Medium
    39-5Number Theory Problem 5
    Hard
    39-6Number Theory Problem 6
    Easy
  • 40-1Game Theory Problem 1
    Easy
    40-2Game Theory Problem 2
    Easy
    40-3Game Theory Problem 3
    Medium
    40-4Game Theory Problem 4
    Medium
    40-5Game Theory Problem 5
    Hard
    40-6Exercise 40.6
    Easy
  • 41-1Number Theory Problem 1
    Easy
    41-2Number Theory Problem 2
    Easy
    41-3Number Theory Problem 3
    Medium
    41-4Number Theory Problem 4
    Medium
    41-5Number Theory Problem 5
    Hard
    41-6Number Theory Problem 6
    Easy
  • 42-1Game Theory Problem 1
    Easy
    42-2Game Theory Problem 2
    Easy
    42-3Game Theory Problem 3
    Medium
    42-4Game Theory Problem 4
    Medium
    42-5Game Theory Problem 5
    Hard
    42-6Exercise 42.6
    Easy
  • 43-1Number Theory Problem 1
    Easy
    43-2Number Theory Problem 2
    Easy
    43-3Number Theory Problem 3
    Medium
    43-4Number Theory Problem 4
    Medium
    43-5Number Theory Problem 5
    Hard
    43-6Number Theory Problem 6
    Easy
  • 44-1Game Theory Problem 1
    Easy
    44-2Game Theory Problem 2
    Easy
    44-3Game Theory Problem 3
    Medium
    44-4Game Theory Problem 4
    Medium
    44-5Game Theory Problem 5
    Hard
    44-6Exercise 44.6
    Easy
  • 45-1Number Theory Problem 1
    Easy
    45-2Number Theory Problem 2
    Easy
    45-3Number Theory Problem 3
    Medium
    45-4Number Theory Problem 4
    Medium
    45-5Number Theory Problem 5
    Hard
    45-6Number Theory Problem 6
    Easy
  • 46-1Game Theory Problem 1
    Easy
    46-2Game Theory Problem 2
    Easy
    46-3Game Theory Problem 3
    Medium
    46-4Game Theory Problem 4
    Medium
    46-5Game Theory Problem 5
    Hard
    46-6Exercise 46.6
    Easy
  • 47-1Number Theory Problem 1
    Easy
    47-2Number Theory Problem 2
    Easy
    47-3Number Theory Problem 3
    Medium
    47-4Number Theory Problem 4
    Medium
    47-5Number Theory Problem 5
    Hard
    47-6Number Theory Problem 6
    Easy
  • 48-1Game Theory Problem 1
    Easy
    48-2Game Theory Problem 2
    Easy
    48-3Game Theory Problem 3
    Medium
    48-4Game Theory Problem 4
    Medium
    48-5Game Theory Problem 5
    Hard
    48-6Exercise 48.6
    Easy
  • 49-1Number Theory Problem 1
    Easy
    49-2Number Theory Problem 2
    Easy
    49-3Number Theory Problem 3
    Medium
    49-4Number Theory Problem 4
    Medium
    49-5Number Theory Problem 5
    Hard
    49-6Number Theory Problem 6
    Easy
  • 50-1Game Theory Problem 1
    Easy
    50-2Game Theory Problem 2
    Easy
    50-3Game Theory Problem 3
    Medium
    50-4Game Theory Problem 4
    Medium
    50-5Game Theory Problem 5
    Hard
    50-6Exercise 50.6
    Easy
  • 51-1Number Theory Problem 1
    Easy
    51-2Number Theory Problem 2
    Easy
    51-3Number Theory Problem 3
    Medium
    51-4Number Theory Problem 4
    Medium
    51-5Number Theory Problem 5
    Hard
    51-6Number Theory Problem 6
    Easy
  • 52-1Game Theory Problem 1
    Easy
    52-2Game Theory Problem 2
    Easy
    52-3Game Theory Problem 3
    Medium
    52-4Game Theory Problem 4
    Medium
    52-5Game Theory Problem 5
    Hard
    52-6Exercise 52.6
    Easy
  • 53-1Number Theory Problem 1
    Easy
    53-2Number Theory Problem 2
    Easy
    53-3Number Theory Problem 3
    Medium
    53-4Number Theory Problem 4
    Medium
    53-5Number Theory Problem 5
    Hard
    53-6Number Theory Problem 6
    Easy
  • 54-1Game Theory Problem 1
    Easy
    54-2Game Theory Problem 2
    Easy
    54-3Game Theory Problem 3
    Medium
    54-4Game Theory Problem 4
    Medium
    54-5Game Theory Problem 5
    Hard
    54-6Exercise 54.6
    Easy
  • 55-1Number Theory Problem 1
    Easy
    55-2Number Theory Problem 2
    Easy
    55-3Number Theory Problem 3
    Medium
    55-4Number Theory Problem 4
    Medium
    55-5Number Theory Problem 5
    Hard
    55-6Number Theory Problem 6
    Easy
  • 56-1Game Theory Problem 1
    Easy
    56-2Game Theory Problem 2
    Easy
    56-3Game Theory Problem 3
    Medium
    56-4Game Theory Problem 4
    Medium
    56-5Game Theory Problem 5
    Hard
    56-6Exercise 56.6
    Easy
  • 57-1Number Theory Problem 1
    Easy
    57-2Number Theory Problem 2
    Easy
    57-3Number Theory Problem 3
    Medium
    57-4Number Theory Problem 4
    Medium
    57-5Number Theory Problem 5
    Hard
    57-6Number Theory Problem 6
    Easy
  • 58-1Game Theory Problem 1
    Easy
    58-2Game Theory Problem 2
    Easy
    58-3Game Theory Problem 3
    Medium
    58-4Game Theory Problem 4
    Medium
    58-5Game Theory Problem 5
    Hard
    58-6Exercise 58.6
    Easy
  • 59-1Number Theory Problem 1
    Easy
    59-2Number Theory Problem 2
    Easy
    59-3Number Theory Problem 3
    Medium
    59-4Number Theory Problem 4
    Medium
    59-5Number Theory Problem 5
    Hard
    59-6Number Theory Problem 6
    Easy
  • 60-1Game Theory Problem 1
    Easy
    60-2Game Theory Problem 2
    Easy
    60-3Game Theory Problem 3
    Medium
    60-4Game Theory Problem 4
    Medium
    60-5Game Theory Problem 5
    Hard
    60-6Exercise 60.6
    Easy
  • 61-1Number Theory Problem 1
    Easy
    61-2Number Theory Problem 2
    Easy
    61-3Number Theory Problem 3
    Medium
    61-4Number Theory Problem 4
    Medium
    61-5Number Theory Problem 5
    Hard
    61-6Number Theory Problem 6
    Easy
  • 62-1Game Theory Problem 1
    Easy
    62-2Game Theory Problem 2
    Easy
    62-3Game Theory Problem 3
    Medium
    62-4Game Theory Problem 4
    Medium
    62-5Game Theory Problem 5
    Hard
    62-6Exercise 62.6
    Easy
  • 63-1Number Theory Problem 1
    Easy
    63-2Number Theory Problem 2
    Easy
    63-3Number Theory Problem 3
    Medium
    63-4Number Theory Problem 4
    Medium
    63-5Number Theory Problem 5
    Hard
    63-6Number Theory Problem 6
    Easy
  • 64-1Game Theory Problem 1
    Easy
    64-2Game Theory Problem 2
    Easy
    64-3Game Theory Problem 3
    Medium
    64-4Game Theory Problem 4
    Medium
    64-5Game Theory Problem 5
    Hard
    64-6Exercise 64.6
    Easy
  • 65-1Number Theory Problem 1
    Easy
    65-2Number Theory Problem 2
    Easy
    65-3Number Theory Problem 3
    Medium
    65-4Number Theory Problem 4
    Medium
    65-5Number Theory Problem 5
    Hard
    65-6Number Theory Problem 6
    Easy
  • 66-1Game Theory Problem 1
    Easy
    66-2Game Theory Problem 2
    Easy
    66-3Game Theory Problem 3
    Medium
    66-4Game Theory Problem 4
    Medium
    66-5Game Theory Problem 5
    Hard
    66-6Exercise 66.6
    Easy
  • 67-1Number Theory Problem 1
    Easy
    67-2Number Theory Problem 2
    Easy
    67-3Number Theory Problem 3
    Medium
    67-4Number Theory Problem 4
    Medium
    67-5Number Theory Problem 5
    Hard
    67-6Number Theory Problem 6
    Easy
  • 68-1Game Theory Problem 1
    Easy
    68-2Game Theory Problem 2
    Easy
    68-3Game Theory Problem 3
    Medium
    68-4Game Theory Problem 4
    Medium
    68-5Game Theory Problem 5
    Hard
    68-6Exercise 68.6
    Easy
  • 69-1Number Theory Problem 1
    Easy
    69-2Number Theory Problem 2
    Easy
    69-3Number Theory Problem 3
    Medium
    69-4Number Theory Problem 4
    Medium
    69-5Number Theory Problem 5
    Hard
    69-6Number Theory Problem 6
    Easy
  • 70-1Game Theory Problem 1
    Easy
    70-2Game Theory Problem 2
    Easy
    70-3Game Theory Problem 3
    Medium
    70-4Game Theory Problem 4
    Medium
    70-5Game Theory Problem 5
    Hard
    70-6Exercise 70.6
    Easy
  • 71-1Number Theory Problem 1
    Easy
    71-2Number Theory Problem 2
    Easy
    71-3Number Theory Problem 3
    Medium
    71-4Number Theory Problem 4
    Medium
    71-5Number Theory Problem 5
    Hard
    71-6Number Theory Problem 6
    Easy
  • 72-1Game Theory Problem 1
    Easy
    72-2Game Theory Problem 2
    Easy
    72-3Game Theory Problem 3
    Medium
    72-4Game Theory Problem 4
    Medium
    72-5Game Theory Problem 5
    Hard
    72-6Exercise 72.6
    Easy
  • 73-1Number Theory Problem 1
    Easy
    73-2Number Theory Problem 2
    Easy
    73-3Number Theory Problem 3
    Medium
    73-4Number Theory Problem 4
    Medium
    73-5Number Theory Problem 5
    Hard
    73-6Number Theory Problem 6
    Easy
  • 74-1Game Theory Problem 1
    Easy
    74-2Game Theory Problem 2
    Easy
    74-3Game Theory Problem 3
    Medium
    74-4Game Theory Problem 4
    Medium
    74-5Game Theory Problem 5
    Hard
    74-6Exercise 74.6
    Easy
  • Number Theory concepts and practice

    75-1Number Theory Problem 1
    Easy
    75-2Number Theory Problem 2
    Easy
    75-3Number Theory Problem 3
    Medium
    75-4Number Theory Problem 4
    Medium
    75-5Number Theory Problem 5
    Hard
    75-6Number Theory Problem 6
    Easy
  • Game Theory concepts and practice

    76-1Game Theory Problem 1
    Easy
    76-2Game Theory Problem 2
    Easy
    76-3Game Theory Problem 3
    Medium
    76-4Game Theory Problem 4
    Medium
    76-5Game Theory Problem 5
    Hard