此题在网上搜索知威佐夫博弈,输的数据与黄金分割数有关,小的一个数与大的数的关系为黄金分割数。又因数为整型,所以运用两次转换int
#include<iostream>
using namespace std;
int main()
{
int a, b,k;
double r = 0.6180339887, R = 1 / r;
while (cin >> a >> b)
{
if (a > b)
{
k = a;
a = b;
b = k;
}
k = a * r;
if (a != int(k*R))
{
++k;
}
cout << (b != int(k*R) + k) << endl;
}
return 0;
}
网友评论