ZOJ
ACM_devil
这个作者很懒,什么都没留下…
展开
-
ZOJ 2686(规律博弈)
题目:题目链接 题意:两人挪动棋子,每人可以选择一个权值为正的方向前进,并把该权值减小。当有人不能移动时,游戏结束; 分析:我们会发现:朝两个方向,只要某个方向的连续的非0个数为奇数,先手就有必胜策略。因为当先手路过一条路线时,把该路线权值降为0,后手只能向前走,如果后手又把该权值归零,那先手必胜。如果不归零,那么先手直接返回来,并把权值归零,那么后手就没有办法移动了,先手必胜。所以,在上述条原创 2013-07-24 20:16:38 · 920 阅读 · 0 评论 -
ZOJ2290-GAME
题目:题目链接 题目的意思:两个人轮流拿石子,其中每一个人拿的棋子数大于等于1小于等于对手上次拿的2倍,然后问你先手在胜利的情况下,第一步应该拿走多少? 分析: 加入石子数是2的话,那么先手只能拿走1个。这样先手必输。当n==3时,先手也是输。当是4个时。先手拿一个让对手面对3个,那么先手必胜,这样推下来,先手必输的数列数斐波那契数列。这样,当输入一个数字时,我们可以判断它是不是斐波原创 2013-07-24 19:22:46 · 1115 阅读 · 0 评论 -
ZOJ 2083 SG博弈
题目:题目链接 题目意思:题目是说两个人给n条线染色,每次可以染的长度是2.A先手,问A是赢还是输?假设双方都采取最好的策略 分析:思路:裸求SG函数,和把一排石子分成若干堆相似,每次把长度为x的线段分成长度为i和x-i-2的线段,然后异或后求出mex值(mex值指不属于这个集合的非负整数),最后把所有子游戏的SG值异或求和 代码: #include #include #inc原创 2013-07-24 20:51:48 · 954 阅读 · 0 评论 -
ZOJ 2507 ANTI-SG博弈
题目:题目链接 这道题目是一道反nim博弈,求的是谁拿走最后一颗石子输; 分析: Anti-SG游戏和SJ定理。对于任意一个Anti-SG游戏,如果我们规定当局面中所有的单一游戏的SG值为0时,游戏结束,则先手必胜当且仅当: (1)游戏的SG函数不为0且游戏中某个单一游戏的SG函数大于1; (2)游戏的SG函数为0且游戏中没有单一游戏的SG函数大于1。 这样,就直接判断就O原创 2013-07-24 21:11:16 · 1206 阅读 · 0 评论