因子游戏题解

结论:奇数时后手必胜,偶数时,如果是2的奇数次幂,后手必胜,否则先手必胜。
这个结论可以用决策树处理出前100个数的答案然后发现规律。
证明的话:
如果是奇数,当这个奇数是质数时,后手直接赢;
否则这个奇数就是若干个奇数的积。
此时无论先手如何变化,都会将奇数变成偶数。
后手只需要和先手减去相同的数即可。

如果是偶数,首先把因子2提出来,偶数就是若干个2和若干个奇数的乘积。
当这些奇数只有1时,每次变化相当于保留一部分2,将剩下的部分变成一个奇质数或者1,因为2的次幂减一都是质数或1,如果先手变化成质数,后手可以反将剩下的2也变成1个奇质数或者1,先手就陷入了奇数的必败态,显然先手不会这么做。
先手的做法应该是,将一个2变成1,这样后手也会面对一个2的次幂的情况。
后手也应当采取相同的策略。
因此如果x是2的奇数次幂,后手胜出,偶数次幂先手胜出。

最后再来看若干个2且奇数部分不为1的情况。
先手直接将若干个2变成奇质数或者1,后手面对奇数,陷入必败态。

全部评论

相关推荐

AI牛可乐:哇,听起来你很激动呢!杭州灵枢维度科技听起来很厉害呀~你逃课去白马培训,老冯会同意吗?不过既然你这么感兴趣,肯定是有原因的吧! 对了,想了解更多关于这家公司或者求职相关的问题吗?可以点击我的头像私信我哦,我可以帮你更详细地分析一下!
你都用vibe codi...
点赞 评论 收藏
分享
愤怒的查理被升职:每个项目经历后面加关键成果:xxx, 项目经历要和岗位JD匹配,不是有多少项目经历都要写上的,挑选出是个岗位JD的,并且内容往岗位JD方面写,教育背景直接写 大学+专业+时间,一行就过去了。你是建筑投运营别人不看你本科建筑学的怎么样
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务