社区
数据结构与算法
帖子详情
古老的谜题:两人轮流拣三堆小石子,谁拿最后一粒便输...
iscandy
2007-06-27 04:15:24
加精
有三堆小石子,两个人轮流来取走,规则如下:
1、每次可以取走任意数量
2、每次只能在一堆中拣取,不能跨堆
3、每次最少必须取1粒
4、取所有石子中的最后1粒者即输。
如果最先取的那人输掉,那么这三堆石头的数量分别是怎样的?
举例:
0,0,1
0,2,2
0,3,3
0,4,4
0,5,5
...
1,1,1
1,2,3
1,4,5
1,6,7
...
...全文
6943
55
打赏
收藏
古老的谜题:两人轮流拣三堆小石子,谁拿最后一粒便输...
有三堆小石子,两个人轮流来取走,规则如下: 1、每次可以取走任意数量 2、每次只能在一堆中拣取,不能跨堆 3、每次最少必须取1粒 4、取所有石子中的最后1粒者即输。 如果最先取的那人输掉,那么这三堆石头的数量分别是怎样的? 举例: 0,0,1 0,2,2 0,3,3 0,4,4 0,5,5 ... 1,1,1 1,2,3 1,4,5 1,6,7 ...
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
55 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
wasaa
2009-03-03
打赏
举报
回复
电脑好的人 数学都要很好的啊?
aripio
2009-02-14
打赏
举报
回复
此题也出现在微软的《编程之美》一书中了
PrinceGay
2007-07-20
打赏
举报
回复
也就是说什么情况下先拿的人必输,不管怎么拿都是输
1,0,0
1,1,1
0,2,2
1,2,3
这样如果谁先拿必输
yardloun
2007-07-03
打赏
举报
回复
关注
crkj0304
2007-07-02
打赏
举报
回复
没有说堆的顺序和必须按堆的顺序依次取啊。
jinwei1984
2007-07-02
打赏
举报
回复
mark! 好多高手
adrian8181
2007-07-02
打赏
举报
回复
组合数学中的NIM游戏。:)。可以参考和组合数学相关的资料。这种问题有不少变形。
glust
2007-07-02
打赏
举报
回复
留影
yujia_2008
2007-07-02
打赏
举报
回复
顶!
LutzMark
2007-07-01
打赏
举报
回复
日式RPG里经常出现
iscandy
2007-07-01
打赏
举报
回复
果然,除了0,0,1 和1,1,1 这两种特殊情况,其它的只要XOR为零就是必输之局了!
这么简单,哪个强人发现这个规律的啊?太牛了!
xiaohuan
2007-06-30
打赏
举报
回复
大航海4里面有这个游戏,后来分析了下,写了个程序,好几年了
dext
2007-06-30
打赏
举报
回复
N堆和三堆是一样的
各队的石子数 异或,得零就赢。
yin9184
2007-06-30
打赏
举报
回复
mark
brookcobble
2007-06-30
打赏
举报
回复
想法: 如下表:
.....................
5: 005a 014b, 023a 113a 122a
4: 004a 013a 022b 112a
3: 111b 012a 003a
2: 011a 002a
1: 001b
最左边是总石子数,右边是石子的分配情况,标a是第一个人赢,标b是第二个人影。算法:总石子从1开始,第二个人影,依次网上找,例如005可以通过一次操作到下面的某个b,那么第一个人影,否则第二个人影,因为下面的节点,或a或b有必胜策略,无论第一个人怎么操作,总石子减少,如果他不能到b,那么下一个人一定存在必胜策略。
hujiao199
2007-06-29
打赏
举报
回复
回复Ice0River() 结果是唯一的,就是先拿的赢。因为你不可能采取让自己输的策略。
liuhaidi
2007-06-29
打赏
举报
回复
mathe()的算法是正确的,但怎么证明?
Ice0River
2007-06-29
打赏
举报
回复
我有一点不明白:两个人拿的时候,是不是都尽可能的想让对方输?
1 n 1 的话
如果 n 是1 ,那结果是肯定的,
如果 n 不是1 ,拿法不同的话,结果就可能不同啊。
hujiao199
2007-06-29
打赏
举报
回复
看来不是奇偶的问题。
hujiao199
2007-06-29
打赏
举报
回复
但是又被ziq9931给推翻了。yizhu2000的不对。
加载更多回复(35)
博弈论
三堆
石子问题
有
三堆
石子,分A,B,C
三堆
,
两人
进行取石子游戏,每次从其中一堆取任意多个(至少取一个,可以取完)如果应该你取石子时,已经没有石子可取,则你输。如果你第一个取,问你是否能赢,如果能赢,输出第一次的取法否则输出1经典博弈问题,同类问题有:1.一堆石子每次取1~k个,如果应该你取石子时,已经没有石子可取,则你输。2.两堆石子每次从其中一堆取个任意多个(至少取一个,可以取完),如果应该你取石子时,已经没...
取石子游戏--博弈
hdu-1527传送门 数据: 有两堆石子,数量任意,可以不同。游戏开始由两个人
轮流
取石子。游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子;二是可以在两堆中同时取走相同数量的石子。
最后
把石子全部取完者为胜者。现在给出初始的两堆石子的数目,如果轮到你先取,假设双方都采取最好的策略,问
最后
你是胜者还是败者。 Input 输入包含若干行,表示若干种石子的初始情况,其中...
[博弈] 取(2堆)石子游戏
题目: 有两堆石子,数量任意,可以不同。游戏开始由两个人
轮流
取石子。游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子;二是可以在两堆中同时取走相同数量的石子。
最后
把石子全部取完者为胜者。现在给出初始的两堆石子的数目,如果轮到你先取,假设双方都采取最好的策略,问
最后
你是胜者还是败者。如果你胜,你第1次怎样取子? Input 输入包含若干行,表示若干种石子的初始情况,其中每一行
1022: [SHOI2008]小约翰的游戏John - BZOJ
Description小约翰经常和他的哥哥玩一个非常有趣的游戏:桌子上有n堆石子,小约翰和他的哥哥
轮流
取石子,每个人取的时候,可以随意选择一堆石子,在这堆石子中取走任意多的石子,但不能
一粒
石子也不取,我们规定取到
最后
一粒
石子的人算输。小约翰相当固执,他坚持认为先取的人有很大的优势,所以他总是先取石子,而他的哥哥就聪明多了,他从来没有在游戏中犯过错误。小约翰一怒之前请你来做他的参谋。自然,你应该先写...
1022: [SHOI2008]小约翰的游戏John
Description 小约翰经常和他的哥哥玩一个非常有趣的游戏:桌子上有n堆石子,小约翰和他的哥哥
轮流
取石子,每个人取的时候,可以随意选择一堆石子,在这堆石子中取走任意多的石子,但不能
一粒
石子也不取,我们规定取到
最后
一粒
石子的人算输。小约翰相当固执,他坚持认为先取的人有很大的优势,所以他总是先取石子,而他的哥哥就聪明多了,他从来没有在游戏中犯过错误。小约翰一怒之前请你来做他的...
数据结构与算法
33,008
社区成员
35,326
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章