题目描述

欧几里德的两个后代Stan和Ollie正在玩一种数字游戏,这个游戏是他们的祖先欧几里德发明的。给定两个正整数M和N,从Stan开始,从其中较大的一个数,减去较小的数的正整数倍,当然,得到的数不能小于0。然后是Ollie,对刚才得到的数,和M,N中较小的那个数,再进行同样的操作……直到一个人得到了0,他就取得了胜利。下面是他们用(25,7)两个数游戏的过程:

Start:25 7

Stan:11 7

Ollie:4 7

Stan:4 3

Ollie:1 3

Stan:1 0

Stan赢得了游戏的胜利。

现在,假设他们完美地操作,谁会取得胜利呢?

输入输出格式

输入格式:

第一行为测试数据的组数C。下面有C行,每行为一组数据,包含两个正整数M, N。(M, N不超过长整型。)

输出格式:

对每组输入数据输出一行,如果Stan胜利,则输出“Stan wins”;否则输出“Ollie wins”

输入输出样例

输入样例#1:

2
25 7
24 15
输出样例#1:

Stan wins
Ollie wins

对于最初的状态a,b
若a>=2b,则此时先手者有两种选择,必将转向至少一个必败态,故此时为必胜态;
若a==b,显然为必胜态。
博弈搜索即可!
 #include<cstdio>
#include<cstring>
#include<iostream>
using namespace std; int n,x,y; bool check(int a,int b){
if(a<b) swap(a,b);
if(a==b||a>=(b<<)) return ;
return !check(a-b,b);
} int main(){
scanf("%d",&n);
while(n--){
scanf("%d%d",&x,&y);
puts(check(x,y)?"Stan wins":"Ollie wins");
}
return ;
}

最新文章

  1. sh 测试网段在线主机
  2. 在Webstorm/Phpstorm中设置连接FTP,并快速进行文件比较,上传下载,同步等操作
  3. WinDbg 命令三部曲:(一)WinDbg 命令手册
  4. js使用转义符技巧输出HTML
  5. git回滚到上一版本
  6. 【转】从viewController讲到强制横屏,附IOS5强制横屏的有效办法
  7. 资源 之 4.4 Resource通配符路径(拾贰)
  8. mysql innoDB 与 myISAM
  9. HttpServerUtility类
  10. 数据采集工具flume
  11. xen虚拟机操作整理
  12. 简述java程序中的main方法
  13. wampserver使用过程中遇到的问题及相关配置
  14. JavaScript实现浏览器本地的图像移动、大小调整和裁剪
  15. JSP7(Cookie与javamail)
  16. SpringBoot之旅第二篇-配置
  17. Lab 11-2
  18. SpringMVC(十一) RequestMapping获取Cookie值
  19. poj2763树链剖分边权+区间和
  20. DOM jquery

热门文章

  1. InnoDB事务之redo log工作原理
  2. testNG之异常测试
  3. 在ios微信中提交form,php端收不到参数的问题
  4. delphi中SendMessage使用说明
  5. [CSP-S模拟测试47]反思+题解
  6. Hive 数据类型转换(转)
  7. java.lang -&gt; Object
  8. 还在用 KPI 管研发团队?用 OKR 倍儿爽!
  9. Spring Enable高级应用及原理
  10. 在Python中检测*可用* CPU数量的便携方式