欧几里德的游戏
题目描述
欧几里德的两个后代 Stan 和 Ollie 正在玩一种数字游戏,这个游戏是他们的祖先欧几里德发明的。给定两个正整数 M M M 和 N N N,从 Stan 开始,从其中较大的一个数,减去较小的数的正整数倍,当然,得到的数不能小于 0 0 0。然后是 Ollie,对刚才得到的数,和 M , N M,N M,N 中较小的那个数,再进行同样的操作……直到一个人得到了 0 0 0,他就取得了胜利。下面是他们用 ( 25 , 7 ) (25,7) (25,7) 两个数游戏的过程:
- 初始: ( 25 , 7 ) (25,7) (25,7);
- Stan: ( 11 , 7 ) (11,7) (11,7);
- Ollie: ( 4 , 7 ) (4,7) (4,7);
- Stan: ( 4 , 3 ) (4,3) (4,3);
- Ollie: ( 1 , 3 ) (1,3) (1,3);
- Stan: ( 1 , 0 ) (1,0) (1,0)。
Stan 赢得了游戏的胜利。
现在,假设他们完美地操作,谁会取得胜利呢?
输入格式
本题有多组测试数据。
第一行为测试数据的组数
C
C
C。
下面
C
C
C 行,每行为一组数据,包含两个正整数
M
,
N
(
M
,
N
<
2
31
)
M,N(M,N<2^{31})
M,N(M,N<231)。
输出格式
对每组输入数据输出一行,如果 Stan 胜利,则输出 Stan wins
;否则输出 Ollie wins
。
样例 #1
样例输入 #1
2
25 7
24 15
样例输出 #1
Stan wins
Ollie wins
提示
1 ≤ C ≤ 6 1 \leq C \leq 6 1≤C≤6。
Scratch实现
后续
接下来我会不断用scratch来实现信奥比赛中的算法题、Scratch考级编程题实现、白名单赛事考题实现,感兴趣的请关注,我后续将继续分享相关内容