题意
求出一个大于 ⌈n⌉\lceil\sqrt{n}\rceil⌈n⌉ 的环或找出 ⌈n⌉\lceil\sqrt{n}\rceil⌈n⌉ 个点的独立集。
分析
用 dfsdfsdfs 树可以找最大环。
dfsdfsdfs 树是什么?就是从某个点进行 dfsdfsdfs 形成的树,如图。

深色的是树边,浅色的是非树边。
dfsdfsdfs 树有个性质:每条非树边 (a,b)(a, b)(a,b) 都连向子树中某个点。
那么,aaa 到 bbb 在树上的链与非树边 (a,b)(a,b)(a,b) 会形成一个环,环的大小为 ∣dep[a]−dep[b]∣+1|dep[a]-dep[b]|+1∣dep[

该博客介绍了如何利用DFS树来解决寻找大于⌈n⌉的环或找到⌈n⌉个点的独立集的问题。通过分析DFS树的性质,指出最大环由链和非树边组成,并给出利用栈维护链的解决方案。当无法找到满足条件的环时,证明了存在至少⌈n⌉个点的独立集,并提供了选择点的策略。
最低0.47元/天 解锁文章
426

被折叠的 条评论
为什么被折叠?



