取石子游戏(wythoff奇异局势的判断).cpp

来自「杭电acm解题报告2001---2099.」· C++ 代码 · 共 35 行

CPP
35
字号
#include <cstdio>
#include <cmath>

const double r51 = (sqrt(5.0)-1)/2.0;
const double r52 = (sqrt(5.0)+1)/2.0;

int main()
{
	int n,m,t;
	while (scanf("%d %d",&n,&m)==2) {
		if (n>m) {
			t =n;
			n =m;
			m =t;
		}
		int j = n * r51;
		int aj = j * r52;
		bool flag =false;
		if (n == aj && m == aj+j) {
			flag =true;
		}
		else {
			int aj1 = (j+1)*r52;
			if (n == aj1 && m == aj1+j+1) {
				flag =true;
			}
		}
		if (flag) {
			printf("0\n");
		}
		else {
			printf("1\n");
		}
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?