【数学文化十讲】序言 抓堆游戏
1.抓堆游戏
有一堆谷粒(比如100粒),甲、乙两人轮流抓,每次可以抓1-5粒,甲先抓,规定谁抓到最后一把谁赢。问:甲应该如何抓?
一般思路:
1.问题一般化
2.问题特殊化
3.猜测规律
4.证明结论
步骤一:问题一般化
把问题中具体的“100粒”改为一般的“n粒”
步骤二:问题特殊化
取n=1,2,3,4,5,……
n=1, 甲
n=2, 甲
n=3, 甲
n=4, 甲
n=5, 甲
n=6, 乙
……
步骤三:猜测规律
把6的倍数留给对方,自己可以取胜。
步骤四:证明结论
用数学归纳法证明,6的倍数,设为6k
1.当k=1时,结论显然成立
2.设k-1时,成立
6k时,乙抓 1,甲抓5,6k-1-5=6(k-1) 成立
2, 甲抓4,6k-2-4=6(k-1) 成立
……
显然结论成立
2.抓三堆游戏
有三堆谷粒(例如100粒、200粒、300粒),甲、乙轮流抓,每次只能从一堆中抓,最少抓1粒,可以抓任意多粒;甲先抓,规定谁抓到最后一把谁赢。
问:甲应该如何抓?为什么?
步骤一:问题一般化
100,200,300 变为(a, b, c)
步骤二:问题特殊化
1.(a, 0, 0) 甲
2. (a, b, 0)
(1) 若 a=b,即状况为(a, a, 0) 乙
(2) 若 a != b, 即状况为(a, b, 0) 设 b>a, 此时先抓者必胜, 甲
3. (a, b, c)
一个结论:把两堆相等的状况留给对方,自己可以取胜
(1) 其中两堆相等, 即状况为(a, a, c), 甲先抓c,剩(a, a, 0) 甲
(2) 任意两堆都不等,即(a, b, c), 设 a < b < c,
a=1时,(1, b, c) 再对b分情况讨论
a=2时,(2, b, c) 再对b分情况讨论
……
a=1时,b最小为2,于是
起始情况是(1,2,3)穷举
(0,2,3) -> (0,2,2) 乙
(1,0,3) -> (1,0,1) 乙
(1,1,3) -> (1,1,0) 乙
(1,2,0) -> (1,1,0) 乙
(1,2,1) -> (1,0,1) 乙
(1,2,2) -> (0,2,2) 乙
一个结论:把(1,2,3)留给对方,自己可以获胜
一般的,对(1,2,c),甲可以获胜
(1,3,c)把c抓成2,甲可以获胜
(1,4,5)可以证明,乙可以获胜
把(1,4,5)留给对方,自己可以获胜
(1,4,c)把c抓成5,甲可以获胜
一个结论,把(1, 2m, 2m+1)留给对方,自己可以取胜