取石子游戏
取石子游戏
题目描述
本题来自一本通 C++ 编程语言入门 基础算法 第五章 搜索与回溯算法(pid 1218)。
有两堆石子,两个人轮流去取。每次取的时候,只能从较多的那堆石子里取,并且取的数目必须是较少的那堆石子数目的整数倍,最后谁能够把一堆石子取空谁就算赢。比如初始的时候两堆石子的数目是25和7。
| 25 7 | --> | 11 7 | --> | 4 7 | --> | 4 3 | --> | 1 3 | --> | 1 0 |
| 选手1取 | 选手2取 | 选手1取 | 选手2取 | 选手1取 |
最后选手1(先取的)获胜,在取的过程中选手2都只有唯一的一种取法。
给定初始时石子的数目,如果两个人都采取最优策略,请问先手能否获胜。
输入格式
输入包含多数数据。每组数据一行,包含两个正整数a和b,表示初始时石子的数目。输入以两个0表示结束。
输出格式
如果先手胜,输出"win",否则输出"lose"。34 12
15 24
0 0win
lose