- 主题:请问这道取火柴题怎么解?
前几天版上有人发过的试卷中的一道题,还没有版友给出解答,恳请大家指点,题目如下:
有2022根火柴,甲乙两人轮流取,每次只能取1、3、4、7根,谁取最后一根谁输,甲先取。他要想保证获胜,第一次应该取几根?(写出所有可能)
--
FROM 27.152.72.*
请问 8k 的这个8是怎么得出来的? 为何要确保没回合拿的合计数是8? 因为取的可能性是1、3、4、7,如果第一人取了3根,那么另一个人无论如何都无法使得合计数为8,所以8这个数有什么意义么?
【 在 laofu 的大作中提到: 】
: 这题甲不能保证每轮(甲乙各取一次)取走固定的数量,不知道有没有简单的方法。笨办法是从剩余1根开始,能找出来当剩余数量为 1+8k 或者 3+8k 这样的形式时,先取的必输。所以甲第一轮要取3根。
:
--
FROM 27.152.72.*
为什么说8是循环节?
【 在 outhear 的大作中提到: 】
: 可以发现循环节是8,而2022=6+8*252, 所以原题等价于6根火柴的情况下甲先取。
--
FROM 27.152.72.*
“先手取完后留8根可以保证后手不能直接赢”这个结论怎么出来的?为什么是留8根?
一个人最多取7根,那么两个人合在一起最多就是取14根。难道不是留14根才能确保后手不能直接赢么?
【 在 fatum 的大作中提到: 】
: 最多可以取7根,先手取完后留8根可以保证后手不能直接赢,所以7+1=8是循环节(不理解这个名称的意义,但感觉这个游戏就是这么玩的)
--
FROM 27.152.72.*
SG值序列,看不懂了。。。。
【 在 GGGGDDDDK 的大作中提到: 】
: SG值序列:
: 1 2 3 4 5 6 7 8 9 10 11 12 ...
: 0 1 0 1 2 3 2 3 0 1 0 1 ...
--
FROM 27.152.72.*
谢谢指点,既然“至此可以判断1+8k和3+8k为必败,用数学归纳法很容易证明。”
那么是不是说,先手的人可以拿1个,也可以拿3个,都可以保证自己必胜?
【 在 laofu 的大作中提到: 】
: 我说的是"没法"保证每回合的合计数,如果能保证问题就简单了。
: 我不知道有没有简单的办法能直接从1347推出“8”来,这里8=1+7是凑巧的。
: 笨方法,从1开始逐个确定必胜/必败局面,如果从某个数字能一步转移到某个已知的必败局面,那么这个数字对应的就是必胜局面;反之,如果一步转移只能到已知的必胜局面,则对应的是必败。
: ...................
--
FROM 27.152.72.*
2022=252*8+1+5。所以如果先手拿了5根,剩下的局面也可以是 252*8+1 ,依然可以保证必胜,也就是说答案有两种,先取5根,或者先取3根都行?
【 在 laofu 的大作中提到: 】
: 不是,先手的拿完之后如果能变成1+8k或3+8k就必胜,这题里先手拿3根之后=2019=8*252+3,留下必败局面给乙,甲必胜;但只拿1根后=8*252+5不是必败局面。
: 如果起始是2020,就是你说的拿1根或3根。
: :
--
FROM 27.152.72.*
感觉你这个做法有道理,但是还不算太严谨。2000是可以被8和4整除,但是可以再多算一点,2016也可以被8和4整除,所以应该是让2016根去作为 乙先,甲后的循环根数,这样就剩下6根。 因为最后要给乙留下1根或3根才能确保甲获胜,又由于甲只能拿1,3,4,7这四种根数,所以甲第一次就只能拿3根,使得最后可以剩下3根留给乙。
【 在 tengshiwei 的大作中提到: 】
: 甲拿3根是怎么算的呢。先江2022分成2000+22,2000可以被8和4整除,所以,乙开始拿、甲拿作为一个循环,甲凑4,8就行。最后剩22根,甲第一次可能拿1、3、4、7根,也就是可能会剩下21、19、18、15,因为最后一轮甲拿完一定要给乙剩1根或者3根,1、4、7凑8;3凑6或者10,感觉19最合适,先试算了19
: 发自「今日水木 on iPhone 13 Pro Max」
--
FROM 27.152.72.*