A Multiplication Game - HDU 1517 博弈
来源:互联网 发布:php o2o 编辑:程序博客网 时间:2024/05/23 16:43
A Multiplication Game
Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 4259 Accepted Submission(s): 2435
Problem Description
Stan and Ollie play the game of multiplication by multiplying an integer p by one of the numbers 2 to 9. Stan always starts with p = 1, does his multiplication, then Ollie multiplies the number, then Stan and so on. Before a game starts, they draw an integer 1 < n < 4294967295 and the winner is who first reaches p >= n.
Input
Each line of input contains one integer number n.
Output
For each line of input output one line either
Stan wins.
or
Ollie wins.
assuming that both of them play perfectly.
Stan wins.
or
Ollie wins.
assuming that both of them play perfectly.
Sample Input
1621734012226
Sample Output
Stan wins.Ollie wins.Stan wins.
题意:有一个数字,开始为1,每个人可以把它乘以2-9,谁先得到大于等于n的数字,谁就获胜,问先手胜负。
思路:我们可以得到2-9先手必胜,10-18先手必败,19-18*9先手必胜,以此类推。
AC代码如下:
#include<cstdio>#include<cstring>using namespace std;typedef long long ll;struct node{ ll a,b; bool type;}arr[110];ll n;int main(){ int i,j,k=0; arr[0].a=arr[0].b=1; while(true) { k++; if(k&1) { arr[k].a=arr[k-1].b+1; arr[k].b=arr[k-1].b*9; } else { arr[k].a=arr[k-1].b+1; arr[k].b=arr[k-1].b*2; } if(arr[k].b>4294967295LL) break; } while(~scanf("%I64d",&n)) { for(i=1;i<=15;i++) if(arr[i].a<=n && n<=arr[i].b) break; if(i&1) printf("Stan wins.\n"); else printf("Ollie wins.\n"); }}
0 0
- hdu 1517 - A Multiplication Game(博弈)
- HDU(1517)A Multiplication Game(博弈)
- A Multiplication Game - HDU 1517 博弈
- HDU 1517A Multiplication Game 小聪明博弈
- HDU 1517 A Multiplication Game(博弈)
- HDU 1517 A Multiplication Game(博弈)
- HDU 1517 A Multiplication Game [。。]【博弈】
- HDU 1517 A Multiplication Game(博弈入门)
- hdu 1517 A Multiplication Game(博弈找规律)
- HDU 1517 A Multiplication Game(博弈入门)
- HDU 1517 A Multiplication Game (博弈-求sg)
- HDU 1517 A Multiplication Game 巴什博弈
- HDU 1517 (POJ 2505) A Multiplication Game 简单博弈
- HDU 1517 A Multiplication Game(博弈入门)
- HDU 1517 A Multiplication Game(SG博弈变形)
- HDU 1517 A Multiplication Game (博弈 NP图)
- HDU 1517 A Multiplication Game(博弈找规律)
- HDU 1517 && poj 2505 A Multiplication Game (基础博弈)
- PAT《数据结构学习与实验指导》实验项目集 2-05
- 一张思维导图详尽介绍各种服务器
- C# Kinect 2.0 SDK 学习笔记(0)——基本情况介绍
- chrome扩展之content scripts与web pages 交互
- UIview需要知道的一些事情:setNeedsDisplay、setNeedsLayout
- A Multiplication Game - HDU 1517 博弈
- c++ 内存四区简单总结
- 动画和图片的处理
- 深入理解JAVA虚拟机读书笔记之Java内存区域与内存溢出异常
- STM8系列单片机复用引脚烧写程序注意事项
- 基于C++的string类的大数相加的一种算法
- scala eclipse plugin 插件安装
- 104.Maximum Depth of Binary Tree
- 黑马程序员——Java基础--集合(四)