HDU 1848 Fibonacci again and again
生活随笔
收集整理的這篇文章主要介紹了
HDU 1848 Fibonacci again and again
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
#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) //當(dāng)j為必敗態(tài)
{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;
}
?
轉(zhuǎn)載于:https://www.cnblogs.com/Yu2012/archive/2012/10/20/2731998.html
總結(jié)
以上是生活随笔為你收集整理的HDU 1848 Fibonacci again and again的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: UVA 10245 The Closes
- 下一篇: 21.使用委托表达回调