Please_Read's blog

By Please_Read, history, 3 years ago, In English

recently i am seeing lots of graphs problem in div 2 C & D. so i am planning to solve graph problems in range of rating 1500-1800. which graph algorithms i need to learn to solve this rated range problems?

  • Vote: I like it
  • -31
  • Vote: I do not like it

»
3 years ago, # |
  Vote: I like it +8 Vote: I do not like it

First of all, bfs and dfs. It would be enough for the majority of the problems, especially if you can implement dp over subtrees with dfs.

Probably some shortest path searching algorithms (like Dijkstra, Ford-Bellman and Floyd-Warshall) are also required, but they aren't that important.

  • »
    »
    3 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    should i learn dp before coming to graphs? i completed number theory, bs, recursion & stl, now i wanted to learn graph.

    • »
      »
      »
      3 years ago, # ^ |
        Vote: I like it +8 Vote: I do not like it

      Well, dp over subtrees is usually quite intuitive. It is also somehow different from other types of dp, so I think, you shouldn't.

      If you understand how to calculate the sizes of all subtrees in some tree using dfs, you probably understand the whole thing.