题意:default是汉语,自己看去。
题解:
威佐夫博弈这种恶心东西,“正常”解法是打表找规律。
但是我自认为找不出来这种规律,考试要是出了这种题……
就随便输出一个来期望50分吧。。
要是每个测点都多组数据……那……就随机输出0/1期望10分吧。
要是多组数据的组数太多,那就按照表来乱搞。
小数据打表输出,大数据233。
威佐夫用的是黄金分割数。(网上查的)
下面是代码:
#include <cmath> #include <cstdio> #include <cstring> #include <iostream> #include <algorithm> using namespace std; const double q=(1+sqrt(5.0))/2.0; bool work(int a,int b) { if(a>b)swap(a,b); if(a==(int)((b-a)*q))return 0; return 1; } int main() { for(int a,b;scanf("%d%d",&a,&b)!=EOF;) printf("%d\n",work(a,b)); }
【POJ1067】取石子游戏 威佐夫博弈 这种题真的有意义么?
原文地址:http://blog.csdn.net/vmurder/article/details/42583799