CF1719A Chip Game
代码短吧。
Description
一个大小 的棋盘,你要从左下角走到右上角。
每步可以选择向上或向右走任意奇数步,不可走出棋盘,问 先走,能否获胜。
Analysis
博弈类游戏题。作为 A 题,可以找规律。
Easy version
先不考虑二维,只考虑一维问题,走一条长度为 的线段谁能获胜。
既然提到了奇数,显然会想到通过奇偶性去解决问题:两人共需走的长度为 。 每次移动后,二人移动总长度为奇数; 每次移动后,二人移动总长度为偶数。获胜条件是某人走最后一步到达 。
故若 为奇数,则 会走最后一步并获胜;反之,若 为偶数,则必然是 走最后一步并获胜。
Hard version
一维问题考虑清楚后,现在再考虑二维。
如何解决二维问题?由于只能向右或向上移动,所以可以进行降维:不考虑何时转弯,二人需要移动的总长度总为 ,因为不能走回头路。
即转化为线性(一维)问题:走一条长度为 的线段谁能获胜。
Code
思路想通,代码极其简短。
The end. Thanks.
(一键三连
__EOF__

本文作者:Miracle Hydrogen
本文链接:https://www.cnblogs.com/dry-ice/p/cf1719a.html
关于博主:可耐拽冰!
版权声明:转载请注明来源哟~ QAQ
声援博主:UP UP UP !!!
本文链接:https://www.cnblogs.com/dry-ice/p/cf1719a.html
关于博主:可耐拽冰!
版权声明:转载请注明来源哟~ QAQ
声援博主:UP UP UP !!!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通