DTOJ 4879. 游戏

题意

D社长和H长老有一天闲着无聊,决定开始玩一个简单游戏。

开始有一个无向图,没有自环和重边,由D社长先行,D社长先任意选择一条边,并把它删除,H长老接着选择上一条边的相邻边把它删除,然后又是D选择上一条边的相邻边把它删除(两条边相邻指他们具有公共点)。如果谁无法操作了,谁就输了。

现在给你这个图,在D和H都是最佳策略时,D是否能够胜出。

分值子任务依赖
110 2 ≤ n ≤ 100 , 1 ≤ m ≤ 100 2 \leq n \leq 100, 1 \leq m \leq 100 2n100,1m100
225 2 ≤ n ≤ 2000 , 1 ≤ m ≤ 2000 2 \leq n \leq 2000, 1 \leq m \leq 2000 2n2000,1m20001
365 2 ≤ n ≤ 1 0 4 , 1 ≤ m ≤ 1 0 4 2 \leq n \leq 10^4, 1 \leq m \leq 10^4 2n104,1m1042

题解

对于博弈问题,没有什么思路的时候,先从最特殊的开始考虑:首先考虑一个连通块,没有边则先手必败,只有一条边则先手必胜。

猜想这是否只与边数的奇偶性有关,即奇数条必胜,偶数条必败。

考虑归纳证明,对于边数为大于1的奇数,设边数小于它的情况都符合,那么任意删掉一条边后剩下偶数条(如果连通块不是树的话任意删掉一条非桥边即可,否则删掉一个度数为1的点),本来就必败,再加上只能删相邻边就还是必败,于是必胜;而对于偶数,任意删掉一条后都是必胜所以必败。故只需判断是否有边数为奇数的连通块即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值