[poj2505]A multiplication game_博弈论
Posted shurak
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[poj2505]A multiplication game_博弈论相关的知识,希望对你有一定的参考价值。
A mutiplication game poj-2505
题目大意:给定一个数n和p,两个选手每次可以将p乘上[2,9]。最先使得p大于n的选手胜利。
注释:$1le nle 4294967295$,$p=1$。
想法:
这个题比较新颖,我们可以直接推出必败态区间。
最后,附上丑陋的代码... ...
#include <iostream> #include <cstdio> #include <cstring> #include <algorithm> using namespace std; int main() { int n; while(cin>>n) { bool count=false; while(n>9||count==true) { if(count%2==0) n=(n%9!=0)?n/9+1:n/9; else n=(n%2!=0)?n/2+1:n/2; count=!count; } if(n!=1) cout<<"Stan wins."<<endl; else cout<<"Ollie wins."<<endl; } }
小结:好题。
以上是关于[poj2505]A multiplication game_博弈论的主要内容,如果未能解决你的问题,请参考以下文章
POJ 2505 A multiplication game
POJ2505 A multiplication game[博弈论]
POJ 2505 A multiplication game(找规律博弈/贪心)
POJ2505 A multiplication game(博弈)