HDU 1525 - Euclid's Game ( 博弈 )
题意
Stan和Ollie玩游戏,Stan先手。给出两个数字,可以用大数减去小数的整数倍,要求不能减到小于0。谁先将一个数字减到0,谁获胜。
思路
博弈
假设 a > b
比赛的时候想到了关于a - b > b ( a > 2 * b )状态下,可以决定必胜、必败态,故若a > 2 * b为必胜态。
若a%b == 0, a可以减去b的整数倍变为0,故谁达到这个状态即必胜态
但是当时没考虑周全,这里应该用循环求解,谁达到必胜态则退出循环。
AC代码
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>using namespace std;int main()
{int a, b;while( scanf("%d%d", &a, &b) == 2 && a && b ){if( a < b ) swap(a, b);bool first = true;for(;;){if( a % b == 0 || a > 2 * b ) break;a -= b;swap(a,b);first = !first;}if( first ) puts("Stan wins");else puts("Ollie wins");}return 0;
}
转载于:https://www.cnblogs.com/JinxiSui/p/9740556.html
HDU 1525 - Euclid's Game ( 博弈 )相关推荐
- hdu 1525 Euclid‘s Game
hdu 1525 文章目录 Problem Description 题意: 题解: 代码: Problem Description Two players, Stan and Ollie, play, ...
- HDU 1525 Euclid's Game
题目大意: 题目给出了两个正数a.b 每次操作,大的数减掉小的数的整数倍.一个数变为0 的时候结束. 谁先先把其中一个数减为0的获胜.问谁可以赢.Stan是先手. 题目思路: 无论a,b的值为多少,局 ...
- HDU 1525 类Bash博弈
给两数a,b,大的数b = b - a*k,a*k为不大于b的数,重复过程,直到一个数为0时,此时当前操作人胜. 可以发现如果每次b=b%a,那么GCD的步数决定了先手后手谁胜,而每次GCD的一步过程 ...
- hdu 1907 Jone 尼姆博弈
题目:点击打开链接 John Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others) T ...
- 【 HDU - 1525 】Euclid's Game(较难找规律,玄学博弈,分析必败点必胜点)
题干: Two players, Stan and Ollie, play, starting with two natural numbers. Stan, the first player, su ...
- hdu 1525 博弈
欧几里德问题上的博弈,理解后不难. /* * hdu1525/win.cpp * Created on: 2011-11-11 * Author : ben*/#include <cstdio& ...
- HD 1525 Euclid's Game
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1525 Problem Description Two players, Stan and Ollie, ...
- HDU - 1907 John(尼姆博弈变形)
题目链接:点击查看 题目大意:给出 n 堆石子,两个人轮流取,至少取一个,取到最后一个的人输 题目分析:尼姆博弈是取到最后一个的人获胜,这个题正好反着 一个很显然的奇异局势就是,每一堆的石子的个数都为 ...
- POJ - 2348 Euclid's Game(博弈)
题目链接:点击查看 题目大意:给出初始的两个数字,每一次操作都要在规则下进行:令较大的数减去任意倍较小的数,必须保证不能出现负数,先减到零者获胜,问谁能获胜 题目分析:这个题目说是博弈我感觉更像是找规 ...
最新文章
- python操作系统-python获取操作系统平台、版本及架构
- 什么是死锁?死锁产生的四个必要条件?如何避免与预防死锁?
- C# 字符串操作学习总结
- CapcityScheduler配置方法(还没弄完)
- 如何用Linux命令行管理网络:11个你必须知道的命令
- 推荐 21 个顶级的 Vue UI 库
- 全球与中国雷达信标市场深度研究分析报告
- Windows管理用户账号
- Java面试宝典(2019版)
- 汇编指令lmm_动画视频角色的LMM神经网络
- 查看python openCV的版本号
- 使用 VMware Server 在 Linux 上安装 Oracle RAC 10g
- 大鹏教育视频下载(手动操作)
- 用python制作微信机器人程序编写_Python制作微信聊天机器人
- 开篇:解决IE9字体模糊的问题(又称无法关闭ClearType)
- C++类模板和模板类
- jquery1.0版本代码解读 each extend
- 乐高机器人 搭建钟摆_乐高机器人初级课程表X
- 怎么实现EDIUS 8中自动保存的关闭
- 机器学习应用篇(八)——基于BP神经网络的预测
热门文章
- linux下文件夹压缩解压.tar , .gz , .tar.gz , .bz2 , .tar.bz2 , .bz , .tar.bz , .zip , .rar
- BI推荐8款优秀的app
- 一道经典的SQL面试题
- sqlite随机读取N条记录
- 项目中除了需求外还需要知道的问题
- Chapter8 用例建模
- mechanism and analysis
- 和组内作者consent的模板 亲测有效
- shanghai road map
- windows编程,消息函数中拦截消息的问题