CF1364D Ehab‘s Last Corollary(思维,环,二分图,构造)
Posted issue是fw
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CF1364D Ehab‘s Last Corollary(思维,环,二分图,构造)相关的知识,希望对你有一定的参考价值。
考虑一个环如果长大于等于 k k k,那么我们每次隔点取点,取出了 ⌈ k 2 ⌉ \\lceil \\frac{k}{2}\\rceil ⌈2k⌉个不相关点
当然,这个环必须是复杂环中的最小环,否则可能点和点之间仍然存在边
若这个最小环点数已经小于等于 k k k,输出这个环即可
否则可以隔点取,输出这个独立集(输出 ⌈ k 2 ⌉ \\lceil \\frac{k}{2}\\rceil ⌈2k⌉个点即可)
至于无环的情况,显然只可能是一棵树,对树二分图染色,必然有一侧的点大于等于 ⌈ n 2 ⌉ \\lceil \\frac{n}{2}\\rceil ⌈2n⌉,点数显然多于 ⌈ k 2 ⌉ \\lceil \\frac{k}{2}\\rceil ⌈2k⌉
但是最小环并不好找,此解法终止(不过似乎有人就是这么做的??)
不过还有一种非常奇妙(怪)的做法
先考虑 k = n k=n k=n的情况,此时如果是一棵树,那么二分图染色可以轻松输出独立集
如果不是一棵树,必然存在环,这个环点数不可能大于 n n n,所以输出任意一个环即可
然后 k k k任意的话,因为图是连通图,考虑选择图中一个大小为 k k k的子图,然后和上面一样做…
感觉很不可思议,突然变得很简单emm
代码贴个别人的Here
以上是关于CF1364D Ehab‘s Last Corollary(思维,环,二分图,构造)的主要内容,如果未能解决你的问题,请参考以下文章
CF 1325F - Ehab's Last Theorem
CF1325F Ehab's Last Theorem(dfs树找环与独立集)
codeforces1364 D. Ehab's Last Corollary(最小环)
Codeforces Round #628 (Div. 2) F——Ehab's Last Theorem dfs
Codeforces Round #649 (Div. 2) D - Ehab's Last Corollary dfs