阶梯Nim 与【JZOJ 5500】 营养餐

Description

给定一棵树,每个点有两种信息ai,bi
有两个人A,B在树上博弈,每次一个人可以且必须选择将一个点的ai减少若干,并使整棵树每个节点时刻满足
这里写图片描述Child(i)表示i的直接儿子集合
无法操作者输
求先手必胜还是必败
n5104

Analysis

num(i)=aicchild(i)acbc,则任意时刻有i,num(i)0
假设一次操作在点x处拿走y,则影响为num(x)=y,num(fa(x))+=y
这样就是一个阶梯Nim的模型了
直接对整棵树做阶梯Nim即可,需要注意的是bi=0i点不会影响到fa(i),判断一下就好了

阶梯Nim

定义:每个阶梯上有石子,每次操作可以使上一层阶梯的若干个石子扔到下一层,第一层仍下去相当于消失
结论:忽略偶数层的影响,对奇数层做Nim游戏即可
我们可以构造出一种策略:
假设后手动奇数层,先手也跟着动奇数层,什么事也不会发生(把石子丢进偶数层相当于消失)
如果后手动偶数层并使得x个石子掉入奇数层,先手再将那x个扔回偶数层。相当于什么事也没发生

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值