洛谷——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”

?

輸入輸出樣例

輸入樣例#1:
2
25 7
24 15
輸出樣例#1:
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

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/394126.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/394126.shtml
英文地址,請注明出處:http://en.pswp.cn/news/394126.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

passport身份驗證_了解如何使用Passport.js處理Node身份驗證

passport身份驗證by Antonio Erdeljac通過安東尼奧埃爾德雅克 了解如何使用Passport.js處理Node身份驗證 (Learn how to handle authentication with Node using Passport.js) Support me by reading it from its original source: ORIGINAL SOURCE通過閱讀原始來源為我提供支…

leetcode1448. 統計二叉樹中好節點的數目(dfs)

給你一棵根為 root 的二叉樹&#xff0c;請你返回二叉樹中好節點的數目。 「好節點」X 定義為&#xff1a;從根到該節點 X 所經過的節點中&#xff0c;沒有任何節點的值大于 X 的值。 代碼 /*** Definition for a binary tree node.* public class TreeNode {* int val;…

I/O模型系列之四:兩種高性能IO設計模式 Reactor 和 Proactor

不同的操作系統實現的io策略可能不一樣&#xff0c;即使是同一個操作系統也可能存在多重io策略&#xff0c;常見如linux上的select&#xff0c;poll&#xff0c;epoll&#xff0c;面對這么多不同類型的io接口&#xff0c;這里需要一層抽象api來完成&#xff0c;所以就演變出來兩…

python中序列類型和數組之間的區別_「Python」序列構成的數組

一、Python 標準庫的序列類型分為&#xff1a;容器序列&#xff1a;能夠存放不同類型數據的序列(list、tuple、collections.deque)。扁平序列&#xff1a;只能容納一種類型的數據(str、bytes、bytearray 和 array.array)。其中&#xff0c;容器序列存放的是它們所包含的任意類型…

如何使用EF Core在Blazor中創建級聯的DropDownList

介紹 (Introduction) In this article, we are going to create a cascading dropdown list in Blazor using Entity Framework Core database first approach. We will create two dropdown lists — Country and City. Upon selecting the value from the country dropdown, …

gcc/g++命令

參考&#xff1a;http://www.cnblogs.com/cryinstall/archive/2011/09/27/2280824.html 注意&#xff1a;gcc和g是linux系統下的編程常用指令&#xff0c;C語言文件用gcc&#xff0c;cpp文件用g。 1.預處理 g -E filename.cpp > filename.i 功能&#xff1a;輸出預處理后的…

計算機存儲

位&#xff08;bit&#xff09;&#xff1a;一個數字0或一個數字1&#xff0c;代表一位 字節&#xff08;Byte&#xff09;&#xff1a;每逢8位是一個字節&#xff0c;是數據存儲的最小單位 1Byte 8 bit 平時所說的網速&#xff1a; 100Mbps實際上是以位&#xff08;b&#xf…

leetcode113. 路徑總和 II(dfs)

給定一個二叉樹和一個目標和&#xff0c;找到所有從根節點到葉子節點路徑總和等于給定目標和的路徑。說明: 葉子節點是指沒有子節點的節點。示例: 給定如下二叉樹&#xff0c;以及目標和 sum 22&#xff0c;5/ \4 8/ / \11 13 4/ \ / \7 2 5 1 返回:[[5,4,11,…

java forward 修改請求參數_聊聊springboot session timeout參數設置

序本文主要介紹下spring boot中對session timeout參數值的設置過程。ServerPropertiesspring-boot-autoconfigure-1.5.8.RELEASE-sources.jar!/org/springframework/boot/autoconfigure/web/ServerProperties.javaOverridepublic void customize(ConfigurableEmbeddedServletCo…

javascript控制臺_如何使用JavaScript控制臺改善工作流程

javascript控制臺by Riccardo Canella里卡多卡內拉(Riccardo Canella) 如何使用JavaScript控制臺改善工作流程 (How you can improve your workflow using the JavaScript console) As a web developer, you know very well the need to debug your code. We often use extern…

appium===setup/setupclass的區別,以及@classmathod的使用方法

一、裝飾器 1.用setUp與setUpClass區別 setup():每個測試case運行前運行 teardown():每個測試case運行完后執行 setUpClass():必須使用classmethod 裝飾器,所有case運行前只運行一次 tearDownClass():必須使用classmethod裝飾器,所有case運行完后只運行一次 2.是修飾符&#xf…

cache failed module status_Flutter混編之路——iOS踩坑記錄

一、運行Xcode編譯或者flutter run/build 過程中報錯&#xff1a;"x86_64" is not an allowed value for option "ios-arch".解決方案在Debug.xcconfig中指定 “FLUTTER_BUILD_MODEdebug”&#xff0c;Release.xcconfig中指定“FLUTTER_BUILD_MODErelease”…

【最短路徑Floyd算法詳解推導過程】看完這篇,你還能不懂Floyd算法?還不會?...

簡介 Floyd-Warshall算法&#xff08;Floyd-Warshall algorithm&#xff09;&#xff0c;是一種利用動態規劃的思想尋找給定的加權圖中多源點之間最短路徑的算法&#xff0c;與Dijkstra算法類似。該算法名稱以創始人之一、1978年圖靈獎獲得者、斯坦福大學計算機科學系教授羅伯特…

java object類的常用子類_Java中Object類常用的12個方法,你用過幾個?

前言Java 中的 Object 方法在面試中是一個非常高頻的點&#xff0c;畢竟 Object 是所有類的“老祖宗”。Java 中所有的類都有一個共同的祖先 Object 類&#xff0c;子類都會繼承所有 Object 類中的 public 方法。先看下 Object 的類結構(快捷鍵&#xff1a;alt7)&#xff1a;1.…

leetcode面試題 04.12. 求和路徑(dfs)

給定一棵二叉樹&#xff0c;其中每個節點都含有一個整數數值(該值或正或負)。設計一個算法&#xff0c;打印節點數值總和等于某個給定值的所有路徑的數量。注意&#xff0c;路徑不一定非得從二叉樹的根節點或葉節點開始或結束&#xff0c;但是其方向必須向下(只能從父節點指向子…

javaweb學習總結(二十二)——基于Servlet+JSP+JavaBean開發模式的用戶登錄注冊

一、ServletJSPJavaBean開發模式(MVC)介紹 ServletJSPJavaBean模式(MVC)適合開發復雜的web應用&#xff0c;在這種模式下&#xff0c;servlet負責處理用戶請求&#xff0c;jsp負責數據顯示&#xff0c;javabean負責封裝數據。 ServletJSPJavaBean模式程序各個模塊之間層次清晰&…

2018黃河獎設計大賽獲獎_宣布我們的freeCodeCamp 2018杰出貢獻者獎獲獎者

2018黃河獎設計大賽獲獎by Quincy Larson昆西拉爾森(Quincy Larson) 宣布我們的freeCodeCamp 2018杰出貢獻者獎獲獎者 (Announcing Our freeCodeCamp 2018 Top Contributor Award Winners) Over the past 3 years, freeCodeCamp.org has grown from a small open source proje…

Log4j配置詳解

來自: http://www.blogjava.net/zJun/archive/2006/06/28/55511.html Log4J的配置文件(Configuration File)就是用來設置記錄器的級別、存放器和布局的&#xff0c;它可接keyvalue格式的設置或xml格式的設置信息。通過配置&#xff0c;可以創建出Log4J的運行環境。1. 配置文件 …

cors數據類型_如何根據RTK的差分格式選擇千尋cors賬號的源節點進行設置?

千尋cors賬號的設置中源節點是根據使用的品牌RTK是為雙星儀器還是三星儀器選擇&#xff0c;但問題就在于我們看到的RTK的技術參數中一般很少見到標注儀器的衛星系統&#xff0c;更多的是差分格式。其實千尋cors賬號的源節點也可以根據RTK的差分格式進行選擇&#xff0c;不過這兩…

java swing 串口_ComTest 接收串口數據,并顯示在文本框內,通過JavaSwing實現 Develop 265萬源代碼下載- www.pudn.com...

文件名稱: ComTest下載 收藏√ [5 4 3 2 1 ]開發工具: Java文件大小: 3157 KB上傳時間: 2016-09-21下載次數: 0提 供 者: 韓坤詳細說明&#xff1a;接收串口數據&#xff0c;并顯示在文本框內&#xff0c;通過JavaSwing實現-Receive serial data, and displayed in the t…