题解 P6898 【[ICPC2014 WF]Metal Processing Plant】
判定性问题比较好做,可以
然后的奇偶环优化非常的神仙,考虑从大到小枚举最大边,然后把之前所有边构成的联通块用并查集维护:
- 如果构成了奇环,考虑染色后,必要条件就是在现在的图上边没有相邻的颜色,但此时已经有奇环了,所以必然不可能存在最大边
< 当前边的情况,可以做完一次直接\text{break} - 如果构成了偶环,那么你考虑要用到这个作为一个集合之内最大值,用到它就说明两端要同色,但这两端又隔奇数个点,所以没法做到这点,理由类似奇环,可以
\text{continue} - 否则二分次大边做一遍
这样只会做