HDU2516 取石子游戏
游戏 石子
2023-09-27 14:28:32 时间
原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=2516
取石子游戏
Problem Description
1堆石子有n个,两人轮流取.先取者第1次可以取任意多个,但不能全部取完.以后每次取的石子数不能超过上次取子数的2倍。取完者胜.先取者负输出”Second win”.先取者胜输出”First win”.
Input
输入有多组.每组第1行是2<=n<2^31. n=0退出.
Output
先取者负输出”Second win”. 先取者胜输出”First win”.
参看Sample Output.
Sample Input
2
13
10000
0
Sample Output
Second win
Second win
First win
题解
斐波那契博弈,总之就是一波狂找规律,然后发现只要是斐波那契数先手就必败???证明玄学,博主蒟蒻看不懂:
什么齐肯多夫定理,什么气喘操作???这不就是找规律???
代码
#include<bits/stdc++.h>
using namespace std;
int n,top=1;
long long f[100],maxn=1ll<<31;
void shai()
{
f[1]=1;
for(int i=2;i<=50;++i)
f[i]=f[i-1]+f[i-2];
}
void ac()
{
for(int i=0;i<=50;++i)
if(f[i]==n){printf("Second win\n");return;}
printf("First win\n");
}
int main()
{
shai();
while(scanf("%d",&n)&&n)ac();
return 0;
}
相关文章
- 基于Pygame的兔獾大战游戏的设计与实现_kaic
- c++做的免费游戏狼人杀
- 奇偶游戏
- Unity3D开源棋牌游戏
- poj1067-取石子游戏 (威佐夫博弈)
- nim3取石子游戏 (威佐夫博弈)
- HDU 2176 取(m堆)石子游戏 && HDU1850 Being a Good Boy in Spring Festivaly
- ActionScript3游戏中的图像编程(连载十七)
- Unity VR大师课程 | 制作你的第一款VR塔防游戏
- 【游戏周边】Unity,UDK,Unreal Engine4或者CryENGINE——我应该选择哪一个游戏引擎
- 【Unity游戏开发教程】零基础带你从小白到超神29——导航系统
- 【2023Unity游戏开发教程】零基础带你从小白到超神01——Unity简介下载和安装配置(视频资源订阅扣1私发)
- 如何在 Swift 3 中用 SpriteKit 框架编写游戏 (Part 2)
- 在线游戏为何青睐云计算?揭秘手游云计算架构
- HDU 2176 取(m堆)石子游戏
- 游戏开发中如何阅读代码
- win10 uwp 商业游戏 1.2.1
- 英伟达发布GeForce Now,Mac也能玩大型PC游戏