您的位置:首页 > 其它

poj1067 威佐夫博奕(Wythoff Game)

2015-08-12 15:40 323 查看
前几个必败态(0,0)、(1,2)、(3,5)、(4,7)、(6,10)、(8,13)、(9,15)、(11,18)、(12,20)。

找规律

得出A=ak,B=ak+k

1/a+1/(a+1)=1于是A=(sqrt(5)+1)/2k

#include <iostream>
#include <algorithm>
#include <cstring>
#include <math.h>
#include <cstdio>
using namespace std;
#define FOR(i,j,k) for(int i=j;i<=k;i++)
#define mod 1000000007

int main()
{
int a,b;
while(~scanf("%d%d",&a,&b))
{
if(a>b) swap(a,b);
int d=b-a;
int t=d*(sqrt(5)+1)/2;
if(t==a) printf("0\n");
else printf("1\n");
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: