描述

一天,TT在寝室闲着无聊,和同寝的人玩起了取石子游戏,而由于条件有限,他/她们是用旺仔小馒头当作石子。游戏的规则是这样的。设有一堆石子,数量为N(1<=N<=1000000),两个人轮番取出其中的若干个,每次最多取M个(1<=M<=1000000),最先把石子取完者胜利。我们知道,TT和他/她的室友都十分的聪明,那么如果是TT先取,他/她会取得游戏的胜利么?

输入
第一行是一个正整数n表示有n组测试数据
输入有不到1000组数据,每组数据一行,有两个数N和M,之间用空格分隔。
输出
对于每组数据,输出一行。如果先取的TT可以赢得游戏,则输出“Win”,否则输出“Lose”(引号不用输出)
样例输入
2
1000 1
1 100
样例输出
Lose
Win

【思路】:

如果TT想赢得这场比赛,即先把石子取完。务必保证TT最后一次取石子时,剩余的石子数小于等于M,所以倒数第二次TT的室友取石子时务必保证,剩余的石子数为M+1,这样无论他取几个石子(M-1),TT都能在最后一次全部取完。

#include<iostream>
02. using namespace std;
03. int main()
04. {
05. int k;
06. long m,n;
07. cin>>k;
08. while(k--)
09. {
10. cin>>n>>m;
11. if(n%(m+1)==0)
12. cout<<"Lose"<<endl;
13. else
14. cout<<"Win"<<endl;
15. }
16. }

该题所用的理论:

巴什博弈(Bash Game,同余理论)只有一堆n个物品,两个人轮流从这堆物品中取物,规定每次至少取一个,最多取m个。最后取光者得胜。

显然,如果n=m+1,那么由于一次最多只能取m个,所以,无论先取者拿走多少个,后取者都能够一次

拿走剩余的物品,后者取胜。因此我们发现了如何取胜的法则:如果n=(m+1)r+s,(r为任意自然数,s

≤m),那么先取者要拿走s个物品,如果后取者拿走k(≤m)个,那么先取者再拿走m+1-k个,结果剩下

(m+1)(r-1)个,以后保持这样的取法,那么先取者肯定获胜。总之,要保持给对手留下(m+1)的倍

数,就能最后获胜。

文章原地址:http://blog.csdn.net/sjf0115/article/details/8719238

南阳理工ACM_题目23相关推荐

  1. 南阳理工oj 题目26 孪生素数问题 素数筛选法

    孪生素数问题 时间限制:3000 ms | 内存限制:65535 KB 难度:3 描述 写一个程序,找出给出素数范围内的所有孪生素数的组数.一般来说,孪生素数就是指两个素数距离为2,近的不能再近的相邻 ...

  2. 兰州烧饼 南阳理工ACM 题目779

    题目779 题目信息 运行结果 本题排行 讨论区 兰州烧饼 时间限制:1000 ms  |  内存限制:65535 KB 难度:1 描述 烧饼有两面,要做好一个兰州烧饼,要两面都弄热.当然,一次只能弄 ...

  3. Fibonacci数 南阳理工ACM 题目13

    Fibonacci数 时间限制:3000 ms  |  内存限制:65535 KB 难度:1 描述 无穷数列1,1,2,3,5,8,13,21,34,55...称为Fibonacci数列,它可以递归地 ...

  4. 奋斗的小蜗牛 南阳理工ACM 题目599

    题目599 题目信息 运行结果 本题排行 讨论区 奋斗的小蜗牛 时间限制:1000 ms  |  内存限制:65535 KB 难度:1 描述 传说中能站在金字塔顶的只有两种动物,一种是鹰,一种是蜗牛. ...

  5. 南阳理工ACM 题目73 比大小

    比大小 时间限制:3000 ms  |  内存限制:65535 KB 难度:2 描述 给你两个很大的数,你能不能判断出他们两个数的大小呢? 比如123456789123456789要大于-123456 ...

  6. 南阳理工ACM 题目67 三角形面积

    三角形面积 时间限制:3000 ms  |  内存限制:65535 KB 难度:2 描述 给你三个点,表示一个三角形的三个顶点,现你的任务是求出该三角形的面积 输入 每行是一组测试数据,有6个整数x1 ...

  7. 南阳理工ACM 题4《ASCII码排序》

    4-ASCII码排序 内存限制:64MB 时间限制:3000ms Special Judge: No accepted:76 submit:115 题目描述: 输入三个字符(可以重复)后,按各字符的A ...

  8. C. 啊对对对 (南阳理工oj—21第二次招新赛)

    解法 找到最长的公共前后缀以后,我们可以先输出t,然后t中的最长公共前后缀无需再输出(重复),只输出不重复的部分即可. 比如 aba公共前后缀为a ,不重复的部分为ba,所以你只需要先输出t(aba) ...

  9. 南阳理工学院计算机科学与技术分数线,2017南阳理工计算机科学与技术分数

    技校网专门为您推荐的类似问题答案 问题1: 南阳理工计算机科学与技术系几本 学院现设10个系-机电工程系.计算机科学与技术系.电子与电气工程系.土木工程系.艺术设计系.音乐系.商学系.外语系.建筑系. ...

最新文章

  1. Flutter framework在线上构建时的包大小优化
  2. [PHP] Laravel常见报错总结(持续更新)
  3. 名额有限 | 邀你奔赴一场与太极图形开发者的约会
  4. python与shell的3种交互方式介绍
  5. springboot listener_Springboot 监听redis key的过期事件
  6. SQL2012 之 创建备份计划
  7. C语言中数组越界访问造成死循环现象
  8. linux gcc编译C程序 分享
  9. 存在sql注入漏洞的php,TCCMS在app/controller/news.class.php存在sql注入漏洞
  10. 端口镜像 流量过滤_在 AWS 云环境中滥用 VPC 流量镜像抓取网络流量
  11. python print tab_python print tab_Python 字符串 expandtabs() 方法
  12. zip压缩/tar打包
  13. SRM596 DIV2 500
  14. 十、决策树算法简介-泰坦尼克号乘客生存预测
  15. Android中淡入淡出动画
  16. 案例:通过空气质量指数AQI学习统计分析并进行预测(上)
  17. altium designer 制作元器件封装库
  18. aoc s32p Android 内存,AOC企鹅影霸S32P评测:干掉智能电视?
  19. Angelababy伴娘团礼服最丑被批心机重?赞陈妍希最贴心
  20. Android一键锁屏实现

热门文章

  1. 【测试】Charles抓包
  2. 答群友公式推导疑问:守恒和非守恒公式的动量方程推导
  3. 使用代理服务器之后浏览器无法联网的解决办法
  4. (第一个java爬虫)java爬取网页文本并抽取中英文关键词
  5. 启动TomCat的流程
  6. Cannot run program “F:\JetBrains\IntelliJ IDEA 2021.1\jbr\bin\java.exe“ (in
  7. 浅析人工智能,大数据
  8. SpringBoot之事务处理:隔离级别与传播行为
  9. 国产化适配(身份证读卡器,条码枪,扫描仪,ca证书,在线文档编辑器)
  10. win10计算机本地连接属性在哪里,Win10系统怎么打开本地连接属性