笔试题中的必胜策略

来源:互联网 发布:长安汽车软件下载 编辑:程序博客网 时间:2024/05/16 17:43

比如,题目是这样的:现在有两堆石子,小今与小条玩游戏,2个人都足够聪明,两个人规定:每次每人只能从其中一堆中取走1个或2个或3个石子,最后将石子全部取完的人胜利.现在两堆石子的个数为8和9,请问如何安排才能让小今必胜?

    答案是: 让小今先取。

其实这里是有规律可循的,可归结为 “取余制胜” 。详解如下:

一 取余制胜(取棋子,报数游戏) 

1.每次取1~n个棋子,总数,取最后一个赢 策略:总数÷(1+n) 
有余则先,拿掉余数,之后总与对手凑成1+n即可 无余则后,总与对手凑成1+n即可  
2. 每次取1~n个棋子,总数,取最后一个输 
策略:最狠的做法就是留给对方一枚棋子,对方不取也得取。所以想赢的关键就在于能不能取到倒数第二枚棋子。 

问题转化为:每次取1~n个棋子,总数,取倒数第二枚棋子赢。 (总数-1)÷(1+n),之后同1中做法。

所以这道题,可以分两堆考虑,9个的那堆,9%(1+3) 等于1,所以小今首先取1,然后不管小天取几,都和他凑成4, 这样9这一堆,小今必定最后取。然后小天去取8那一堆,因为8%4 = 0.所以,需要后取,只要和小天所取凑够4就好OK了。

1 0
原创粉丝点击