本文主要是介绍博弈--类似Bash--hdu1517 A Multiplication Game,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
给定n,初始p = 1,2人轮流乘上2-9的数,使p >= n时游戏结束。
类似于Bash博弈(一共m个,每次取1-k个,除第一次外,2人都是1,k,1,k的取)
除开始外,2人的最佳策略应该都是*2 ,*9,*2,*9循环。
#include <iostream>
#include <cstdio>
using namespacestd;
int main()
{
double n;
while (scanf("%lf",&n) !=EOF) {
while(n >18) n /= 18;//n为double
if(n <=9) printf("Stan wins.\n");//若第一个人胜,他第一次会乘 n向上取整 的数
elseprintf("Ollie wins.\n");
}
return 0;
}
这篇关于博弈--类似Bash--hdu1517 A Multiplication Game的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!