洛谷——P1290 欧几里德的游戏
P1290 欧几里德的游戏
题目描述
欧几里德的两个后代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”
输入输出样例
2 25 7 24 15
Stan wins Ollie wins
1、设m,n为输入数据且m>n,第一个满足条件m-n>n的步骤所对应的人为胜利者
2、m%n==0时的步骤所对应的人为胜利者。
#include<cstdio> #include<cstring> #include<cstdlib> #include<iostream> #include<algorithm> using namespace std; int n,x,y,ans; int read() {int x=0,f=1; char ch=getchar();while(ch<'0'||ch>'9'){if(ch=='-')f=-1; ch=getchar();}while(ch>='0'&&ch<='9'){x=x*10+ch-'0'; ch=getchar();}return x*f; } void f(int x,int y) {while(1){if(x>y) swap(x,y);if(y%x==0) break;if(y-x>x) break;y-=x;ans++;} } int main() {n=read();while(n--){ans=0;x=read(),y=read();f(x,y);if(ans%2==0) printf("Stan wins\n");else printf("Ollie wins\n");}return 0; }
转载于:https://www.cnblogs.com/z360/p/7505380.html
洛谷——P1290 欧几里德的游戏相关推荐
- P1290 欧几里德的游戏
P1290 欧几里德的游戏 题意: 给定两个正整数 M 和 N,从 Stan 开始,从其中较大的一个数,减去较小的数的正整数倍,当然,得到的数不能小于 0.然后是 Ollie进行同样的操作,直到一个人 ...
- 洛谷P1129 [ZJOI2007] 矩阵游戏 题解
洛谷P1129 [ZJOI2007] 矩阵游戏 题解 题目链接:P1129 [ZJOI2007] 矩阵游戏 题意:给定一张有黑白棋子的正方形棋盘,问存不存在解法使得经过若干次交换行或列的操作后,左上角 ...
- 洛谷解题P1000 超级玛丽游戏(C++)
此文章关于洛谷P1000 超级玛丽游戏 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)https://www.luogu.com.cn/problem/P1000题目的解析: 先看题 ...
- 【bzoj3240 洛谷P1397】矩阵游戏[NOI2013](矩阵乘法+卡常)
题目传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=3240 这道题其实有普通快速幂+费马小定理的解法--然而我太弱了,一开始只想到了矩阵乘法的 ...
- [洛谷P2584][ZJOI2006]GameZ游戏排名系统
题目大意:同[洛谷P4291][HAOI2008]排名系统(双倍经验) 题解:略 卡点:无 C++ Code: #include <cstdio> #include <map> ...
- AC日记——欧几里得的游戏 洛谷 P1290
题目描述 欧几里德的两个后代Stan和Ollie正在玩一种数字游戏,这个游戏是他们的祖先欧几里德发明的.给定两个正整数M和N,从Stan开始,从其中较大的一个数,减去较小的数的正整数倍,当然,得到的数 ...
- 洛谷P2252 取石子游戏(威佐夫博弈)
题目背景 无 题目描述 有两堆石子,数量任意,可以不同.游戏开始由两个人轮流取石子.游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子:二是可以在两堆中同时取走相同数量的石子.最后 ...
- 洛谷——P1640 [SCOI2010]连续攻击游戏
P1640 [SCOI2010]连续攻击游戏 题目描述 lxhgww最近迷上了一款游戏,在游戏里,他拥有很多的装备,每种装备都有2个属性,这些属性的值用[1,10000]之间的数表示.当他使用某种装备 ...
- 洛谷 P1129 [ZJOI2007]矩阵游戏 解题报告
P1129 [ZJOI2007]矩阵游戏 题目描述 小\(Q\)是一个非常聪明的孩子,除了国际象棋,他还很喜欢玩一个电脑益智游戏――矩阵游戏.矩阵游戏在一个\(N*N\)黑白方阵进行(如同国际象棋一般 ...
最新文章
- Maven多工程的创建
- JAVA 设计的七大原则
- postgis启动_PostgreSQL的安装和启动方法大全
- linux java性能监控工具_Linux实时监控工具Nmon使用
- freecodecamp_freeCodeCamp的服务条款
- 7时过2小时是几时_飞机2小时和高铁7小时你愿意坐哪个?
- 测量坐标出现6位、7 、8位的情况
- UVA495 Fibonacci Freeze【大数+万进制】
- HAproxy的安装配置及动静分离
- oracle 12c sp2 0667,关于数据库安装的问题SP2-0667: Message file sp1.msb not found
- 数学软件Maple使用教程
- 信息系统管理师备考指南
- C语言100ms周期运行时间不够,DEH-系统调研报告.docx
- ts80x服务器系统,Lenovo ThinkServer TS80X 塔式服务器
- 20182319彭淼迪第一周学习总结
- 密码学的数学基础2-同余
- OkHttp简单封装
- 1853: [Scoi2010]幸运数字[容斥原理]
- 2022-2028全球房地产众筹平台行业调研及趋势分析报告
- C#调用obs studio 二次开发 源码分析 编译
热门文章
- mysql慢查询开启语句分析_mysql慢查询语句分析总结
- php的create_function、function_exists判断函数是否存在
- uva 11995——I Can Guess the Data Structure!
- Redis运维和开发学习笔记(6) 监控Redis工作状态-info命令
- linux操作系统进程间通信IPC之管道pipe及FIFO
- C++ array初始化需要双层大括号
- 一个C++程序执行main函数前和执行完main函数后会发生什么。
- Java面试题中高级,java引用数据类型和基本数据类型区别
- 阿里P7大牛整理!BAT大厂面试基础题集合,成功入职字节跳动
- 微信小程序 设置背景占满整个页面