hdu 1525 找规律博弈 (根据每一步的必然性以及可选择性决策)
来源:互联网 发布:宋朝生活知乎 编辑:程序博客网 时间:2024/05/17 20:28
题目来源:
http://acm.hdu.edu.cn/showproblem.php?pid=1525
题意: 给出两个数,a和b,将大的数中,减去若干b的倍数,最终有一个数为0的话就胜了。
分析: 两个数a和b, 不妨设(a > b),总会出现的一个局面是b,a%b,这是必然的,如果a>=b&&a<2*b,那么只有一种情况,直接到b,a%b。否则有多种情况。
a / b == 1 即a Ε [b , 2b) , 下一步 只能到达 (b , a - b)
a / b >= 2 时, 先手可以选择让谁来面对 (b , a%b)这个局势, 显然先手足够聪明, (b , a % b) 这个局势谁胜谁负 已经清楚, 所以先手必胜。
代码如下:
int main(){ int a , b ; while(scanf("%d%d", &a , &b ) != EOF && (a + b) ){ if(a > b ) swap(a , b) ; int flag = 1; while(1){ if( a == 0 || b % a == 0 || b / a >= 2) break; int t = a; a= b - a ; b = t; flag = !flag ; } if(flag) puts("Stan wins"); else puts("Ollie wins") ; } return 0;}
0 0
- hdu 1525 找规律博弈 (根据每一步的必然性以及可选择性决策)
- hdu 1525找规律博弈
- HDU 1525 Euclid's Game (博弈、找规律)*
- HDU 1079 Calendar Game(博弈,找规律可解)
- hdu 1564 博弈找规律(水题)
- HDU 5963 朋友 (博弈、找规律)
- [HDU](2147)kiki's game ---找规律博弈(博弈)
- hdu 1847 博弈找规律
- hdu 2147博弈找规律
- hdu 2516博弈找规律
- HDU 2147博弈-找规律
- hdu 5708 博弈找规律
- HDU 1525 Euclid's Game【博弈 PN找规律】
- HDU 1525 Euclid's Game 找规律博弈
- 【HDU】2147 kiki's game (博弈 找规律)
- hdu 2147 kiki's game(博弈,找规律)
- hdu 2516 取石子游戏(博弈,找规律)
- HDU 1564-Play a game(博弈-找规律)
- 等待事件
- poj 3525 Most Distant Point from the Sea 半平面交 + 二分
- hive使用mysql做元数据库,以及一些问题处理
- poj 3384 Feng Shui 半平面交的应用 求最多覆盖凸多边形的面积的两个圆 的圆心坐标
- poj 1755 Triathlon 半平面交求不等式的 是否为空集-------构造有向直线
- hdu 1525 找规律博弈 (根据每一步的必然性以及可选择性决策)
- OpenGL入门学习之七——使用光照来表现立体感
- hdu 2147 kiki's game (打表找规律奇偶性规律)棋盘沿固定方向向没有经过的方格走, 直到不能走
- foj 1016 无归之室
- zoj 1010 Area 判断线段是否相交(把线段扩充一倍后 好处理) + 多边形求面积
- 黑马程序员--Java面向对象——IO流其他对象
- zoj 1041 Transmitters 判断一个可以移动的半圆最多可容纳的点的个数
- zoj 1081 Points Within 判断点是否在任意多边形内(模板)
- Objective-C 线性表