这题运用博弈中的SG函数解决的,感觉初级博弈题用这个很好用但是难一些的还是不会求SG值,就是SG的模板题。

#include <iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
int k,fib[1000],f[10001];
int mex1(int p)
{int i,t;bool g[101]= {0};for(i=0; i<k; i++){t=p-fib[i];if(t<0)break;if(f[t]==-1)f[t]=mex1(t);g[f[t]]=1;}for(i=0;; i++)if(!g[i])return i;
}
int main()
{fib[0]=1,fib[1]=2;for(int i=2; i<19; i++)fib[i]=fib[i-1]+fib[i-2];k=19;sort(fib,fib+k);memset(f,-1,sizeof(-1));f[0]=0;for(int i=1; i<=1000; i++)f[i]=mex1(i);int a,b,c;while(~scanf("%d%d%d",&a,&b,&c),a+b+c){int s=f[a]^f[b]^f[c];if(s)puts("Fibo");elseputs("Nacci");}return 0;
}

HDU 1848 SG函数相关推荐

  1. 博弈论与sg函数入门

    记录一点结论性的东西,推导见百度吧. 首先博弈的前提是双方"绝对理智". 一般的胜负博弈游戏来说,有以下几点:(注意必胜必败是针对这回合操作的人) 所有终结状态为必败点(比如五子棋 ...

  2. SG函数入门HDU 1848

    SG函数 sg[i]为0表示i节点先手必败. 首先定义mex(minimal excludant)运算,这是施加于一个集合的运算,表示最小的不属于这个集合的非负整数.例如mex{0,1,2,4}=3. ...

  3. Fibonacci again and again HDU - 1848(尼姆博弈+SG函数的运用+SG函数详解)

    题意: 给出三堆石子(m,n,p个),两人每次只能取斐波那契数f[i]个,最先取光所有石子者取胜 题目: 任何一个大学生对菲波那契数列(Fibonacci numbers)应该都不会陌生,它是这样定义 ...

  4. HDU 1846-Brave Game(巴什博弈-SG函数)

    Brave Game Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total ...

  5. HDU - 1536 S-Nim(sg函数)

    题目链接:点击查看 题目大意:根据尼姆博弈的规则,现在更改为每次只能从任意一堆中取走规定集合中的数目,问每次游戏先手必胜还是必败 题目分析:sg打表模板题,这里挂一个大牛的博客,讲得是尼姆博弈和sg函 ...

  6. HDU - 1079 Calendar Game(博弈打表sg函数)

    题目链接:点击查看 题目大意:给出一个日期,两个人轮流按照规则操作,具体规则如下: 每次可以增加一天 每次可以增加一个月到下一个月的当天 首先到达2001年11月4日的人获胜,问谁能获胜 题目分析:因 ...

  7. hdu 1848(Fibonacci again and again)(SG博弈)

    Fibonacci again and again Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Jav ...

  8. HDU 1404 Digital Deletions(博弈 + SG函数打表)

    Digital Deletions 思路 一道博弈论的题目,考虑到题目所给的范围是字符长度为1−>61-> 61−>6,所以我们可以考虑暴力打表出10610 ^ 6106内的所有状态 ...

  9. *【HDU - 1517】【POJ - 2505】A Multiplication Game(博弈,递推找规律或SG函数)

    题干: Stan and Ollie play the game of multiplication by multiplying an integer p by one of the numbers ...

最新文章

  1. 打包静默安装参数(nsis,msi,InstallShield,InnoSetup)[转]
  2. Aurora HDR 2019中文版
  3. 云原生,开发者的黄金时代
  4. 如果编程语言是女孩子
  5. jzoj3801-[NOIP2014模拟8.23]骰子【数学期望】
  6. 【渝粤教育】 国家开放大学2020年春季 1069中央银行理论与实务 参考试题
  7. JAVA 捕获异常所遇BUG
  8. C/C++:uint64_t 转为char*
  9. python optimize_Python的五大常用库——numpy,pandas,matplotlib等
  10. js进阶 10-3 jquery中为什么用document.ready方法
  11. 最大乘积java_在Java中查找负数的最大乘积
  12. cmos和ttl_TTL和CMOS的区别详解
  13. 在大多数情况下病毒入侵计算机系统以后,网络支付与安全练习题库
  14. 汽车零部件开发工具OSEK NM协议栈源代码及配置功能
  15. 显著目标检测的研究思路
  16. 分体式水晶头_六类水晶头的接线方法(分体式安装图解)
  17. FastCGI 进程管理器(FPM)
  18. Tensorflow+gensim实现文章自动审核功能
  19. 将 Business Events 与WESB及WPS rver 集成
  20. stm32f0 大小端_STM32F0中文资料.pdf

热门文章

  1. 移动端手机网站的怎样优化?方法攻略篇
  2. 01 机器学习算法之KNN
  3. Excel VBA小程序 -批量合并和撤销合并单元格
  4. C++中负数的二进制表示
  5. centos 卸载软件
  6. 零成本赚一亿,50特惠定推营销中心与“零成本赚一亿”领袖培训会等着您!
  7. Python if语句嵌套(入门必读)
  8. i2c子系统之platform_driver初始化——i2c_adap_s3c_init()
  9. LDA----吉布斯采样
  10. mac 设置 nginx 代理