考虑一个事情,把树建出来后,非树边都可以扔到后面去,这显然不影响答案。
思考为什么树边的顺序会影响答案,实质是因为一个结点 \(x\) 连了许多非树边,若是这些非树边先被访问了,那么 \(x\) 的父亲就要换了,因此对于这些边有一些先后顺序。
意识到这一点就很好做了,考虑对于每个结点 \(x\) 的非树边(连向它父亲那一层的,和它同一层显然没有影响)所指向结点,相当于在这个结点和其父亲的 \(lca\) 处的两条连下来的边要有一个先后关系,建先后关系图跑拓扑序即可。
考虑一个事情,把树建出来后,非树边都可以扔到后面去,这显然不影响答案。
思考为什么树边的顺序会影响答案,实质是因为一个结点 \(x\) 连了许多非树边,若是这些非树边先被访问了,那么 \(x\) 的父亲就要换了,因此对于这些边有一些先后顺序。
意识到这一点就很好做了,考虑对于每个结点 \(x\) 的非树边(连向它父亲那一层的,和它同一层显然没有影响)所指向结点,相当于在这个结点和其父亲的 \(lca\) 处的两条连下来的边要有一个先后关系,建先后关系图跑拓扑序即可。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/968246.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!