Subdivision (牛客多校) (图论,bfs树)

题意:给定一个 个点 条边的无向图 ,可以将其中任意一条边分裂成一条长度为任意的链(向边中插任意多个 点),可以操作任意多次(也可以不操作)。问经过这样处理之后,从 号节点出发,至多走 步最多可以到多少 个节点。 , , 。

官方题解:

  • 由于需要考察从 出发走 步所能到的点,那么显然需要首先构造出 出发的 bfs 树。考虑以下两种情况:
  • 1. 该边不在 bfs 树上。这种情况存在两个子类——该边连接了同层的两点、该边连接了不同层的两点,但是该 边去除不影响图深度的计算。则这种情况下该边都可以分裂为无穷多个点,并且不影响其他点是否可以到 达。
  • 2 在bfs树上, 那么就把叶子节点的跟弄长就可以了

后记:

  • 根据题目 把 图弄成dfs树, bfs树很重要
  • 然后 分情况讨论,也是一个重要的能力
posted @ 2023-07-28 09:44  VxiaohuanV  阅读(74)  评论(0编辑  收藏  举报