report VI VI EN
Register | Login
  • HOME
  • PROBLEMSET
  • ROADMAP
  • COMPETITION
  • TOPIC
  • RANKING
  • GUIDE
  • MASHUP
  • ABOUT
  • CONTACT
Module Shortest path

Shortest path

**Frequency: 8/10** In unweighted graph, we can use BFS to find shortest path. This module covers problems involve in finding shortest path on weighted graph, as well as other applications of these shortest path algorithms in some non-graph-related problems.

Resources

- [CP Algorithms: Dijkstra](https://cp-algorithms.com/graph/dijkstra.html) - [CP Algorithms: Bellman-Ford](https://cp-algorithms.com/graph/bellman_ford.html) - [CP Algorithms: Floyd-Warshall Algorithm](https://cp-algorithms.com/graph/all-pair-shortest-path-floyd-warshall.html)

Problems

Shortest path 963 / 1010 1000
Delete edge 683 / 760 1100
3D path 377 / 395 1100
Number of shortest paths 618 / 648 1200
Double edge 389 / 475 1300
Second shortest path 424 / 469 1400
Bye bye maximum edge 417 / 463 1500
Boardgame 324 / 363 1500
Teleport 269 / 274 1500
? 191 / 230 1600
Math 255 / 294 1700
Festival 3 245 / 262 1700
Arbitrage 203 / 225 1700
Festival 4 176 / 185 1800
String construction 103 / 117 1800
Bye bye maximum edge 2 90 / 110 1900
Elevator 140 / 165 2000
Holiday 67 / 70 2100
Fortress defense 32 / 53 2200

Graph

  • Shortest path
  • 0-1 BFS / Dial's algorithm
  • Multisource BFS / Dijkstra
  • DAG / Topological sort

Data structure

  • Introduction to Segment Tree and Binary Indexed Tree
  • Sparse table
  • Monotonic queue

Tree

  • Lowest common ancestor (LCA)
  • Euler tour

Dynamic Programming

  • Bitmask DP
  • Exchange labels DP
  • Game DP

Math

  • Introduction to combinatorics
  • Inclusion-exclusion principle