2022“杭电杯”中国大学生算法设计超级联赛(10)
1001 | 1002 | 1003 | 1004 | 1005 | 1006 | 1007 | 1008 | 1009 | 1010 | 1011 | 1012 | |
赛时过题 | O | O | O | O | O | O | ||||||
赛后补题 |
赛后总结:
以96名的好成绩进行收尾真实太棒啦!这场大家都发挥的很棒!每个人都发挥了很大作用,nice!
赛时排名:
7题末尾:68名
8题末尾:36名
1007 Even Tree Split
题目难度:check-in
题目大意:给定一棵n个节点的树(保证n为偶数),问有几种切边方式使得所有剩下的连通块都是偶数个点?
解题分析:
可以发现,若某一条边两端都是偶数个点,那么无论其他边怎么切这条边都一定是可行的。(偶数点连通块->偶数+偶数)
如果一条边两端都是奇数个点,那么无论其他边怎么切这条边一定不可行。(偶数点连通块->奇数+奇数)
如果某一次切出了奇数点连通块,之后无论如何一定会有奇数点连通块(偶数+偶数必为偶数,奇数-偶数必为奇数)
那么对每条边讨论其两端点数即可。
参考代码: