HDU 1848 Fibonacci again and again
#include<stdio.h> #include<string.h> #include<stdlib.h>const int MAXN = 1005; int fib[MAXN], e[MAXN], h[20];void calcFib() {int i;fib[1] = 1, fib[2] = 2;for(i = 3; i <= 16; i ++){fib[i] = fib[i - 1] + fib[i - 2];} }/*求SG值*/ void calcE() {int i, j, k;e[0] = 0, e[1] = 1;for(i = 2; i <= 1000; i ++){memset(h, 0, sizeof h);for(j = 1; fib[j] <= i; j ++){h[e[i - fib[j]]] = 1;}for(j = 0; j <= 15; j ++){if(h[j] == 0) //当j为必败态 {e[i] = j;break;}}} }int main() {int m, n, p;calcFib();calcE();while(scanf("%d%d%d", &m, &n, &p), m || n || p){puts(((e[m] ^ e[n] ^ e[p]) == 0) ? "Nacci" : "Fibo"); //异或为0,先手必败 }return 0; }
转载于:https://www.cnblogs.com/Yu2012/archive/2012/10/20/2731998.html
HDU 1848 Fibonacci again and again相关推荐
- HDU 1848 Fibonacci again and again(博弈)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1848 题意:游戏规则如下: 1. 这是一个二人游戏; 2. 一共有3堆石子,数量分别是m, n, ...
- (step8.2.6)hdu 1848(Fibonacci again and again——组合博弈)
题目大意:输入3个整数m,n,p,分别表示3堆石头中的石头个数 解题思路: 1)斐波那契数列的第16个数fib[16] == 1597 2)(sg[m]^sg[n]^sg[p]) .一定要加括号, ...
- 题解——HDU 1848 Fibonacci again and again
一道组合游戏的题目 SG函数的板子题 预处理出SG函数的值然后回答询问即可 代码 #include <cstdio> #include <algorithm> #include ...
- SG函数入门HDU 1848
SG函数 sg[i]为0表示i节点先手必败. 首先定义mex(minimal excludant)运算,这是施加于一个集合的运算,表示最小的不属于这个集合的非负整数.例如mex{0,1,2,4}=3. ...
- 斐波那契数列大数的压位c语言,HDU 1568 Fibonacci(大数前4位)
分析:x=1234567.求其前四位数: log10(x)=log10(1.234567)+6. 所以1.234567=10^(log10(x)-6). 1234 =(int) 10^(log10(x ...
- 【hdu 1848】Fibonacci again and again
Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s) ...
- hdu 1848(Fibonacci again and again)(SG博弈)
Fibonacci again and again Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Jav ...
- Fibonacci again and again HDU - 1848(尼姆博弈+SG函数的运用+SG函数详解)
题意: 给出三堆石子(m,n,p个),两人每次只能取斐波那契数f[i]个,最先取光所有石子者取胜 题目: 任何一个大学生对菲波那契数列(Fibonacci numbers)应该都不会陌生,它是这样定义 ...
- HDU 1568 Fibonacci【求斐波那契数的前4位/递推式】
Fibonacci Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Proble ...
最新文章
- python 学习笔记 运算符优先级(8)
- linux删除新建的磁盘分区,Fixmbr,删除磁盘分区,新建磁盘分区,等待正式Ubuntu...
- android(cm11)状态栏源码分析(一)
- 7-67 使用二维数组实现Matrix(矩阵)。 (60 分)
- finalize方法_final,finally,finalize三者的含义和区别
- Java 几种常用 JSON 库性能比较
- C#中的委托是什么?事件是不是一种委托?
- 理想汽车4月交付5539辆 累计交付51715辆
- 设计模式之单例模式8种实现方式,其一:饿汉式-静态常量饿汉式
- .NET_.NET 部署问题
- 测试网站集群节点的页面访问是否正常
- [leetcode]Unique Paths
- Comparable与Comparator对象比较
- Python爬虫 西刺代理IP的获取 代理IP
- 2022-2028年中国位置大数据行业市场专项调查及投资前景分析报告
- Cadence PSpice 仿真3: 电容器充放电瞬态仿真图文教程
- win7虚拟机VCMI无法自动安装驱动程序
- c++游戏我的世界1世界觉醒预告
- 【mysql】图文展示Mysql锁
- 苹果无需越狱了!通过苹果签名轻松安装IPA文件