您的位置:首页 > 其它

杭电hdu 1527 取石子游戏 Wythoff Game 博弈

2012-04-08 20:17 330 查看
http://acm.hdu.edu.cn/showproblem.php?pid=1527

好好学习博弈论。

//Wythoff Game
/*
***奇异局势a[0]=b[0]=0,a[k]是未在前面出现过的最小自然数,而 b[k]= a[k] + k。
***几个奇异局势(0,0)、(1,2)、(3,5)、(4,7)、(6,10)、(8,13)、(9,15)、(11,18)、(12,20)
***对于奇异局势,有如下公式:a[k]=[k*(1+√5)/2],b[k]=a[k]+k。(k=0,1,2......,[]表示取整)
***有趣的是,式中的(1+√5)/2正是黄金分割比例。
*/
#include <stdio.h>
#include <math.h>

const double Gsr = (sqrt(5.0)+1)/2;

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