码迷,mamicode.com
首页 > 其他好文 > 详细

POJ 1067 (威佐夫博弈)

时间:2015-08-08 16:25:32      阅读:116      评论:0      收藏:0      [点我收藏+]

标签:

利用公式:判断第一个数是否等于差值*1.618;1.618=(1+sqrt(5))/2;

#include<iostream>
#include<cmath>
#include<cstdio>
#include<algorithm>
using namespace std;
int main()
{
    int a,b,c,flag;
    double m;
    while(~scanf("%d%d",&a,&b))
    {
        flag=0;
        if(a>b)
            swap(a,b);
        c=b-a;
       m=(1+sqrt(5))/2;
        if(a==floor(m*c))
            flag=1;
        if(flag)
            printf("0\n");
        else
            printf("1\n");
    }
    return 0;
}

 

POJ 1067 (威佐夫博弈)

标签:

原文地址:http://www.cnblogs.com/cn-blog-cn/p/4713225.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!