corner_xiejunqi
2024-11-17 22:11:14
由题意可将在棋盘中的坐标
可以看作将第一堆石子拿出任意个石子。
可以看作将第二堆石子拿走任意个石子。
可以看作第一二堆同时拿走任意个石子。
更据 Betty 定理:经过通项公式可得出结论,当
#include<bits/stdc++.h>
using namespace std;
#define int long long
int n,m,t;
signed main(){
// step 1、读题、声明变量
ios::sync_with_stdio(0);
cin.tie(0);cout.tie(0);
// step 2、输入
cin>>n>>m>>t;
// step 3、处理
while(t--){
int x,y;
cin>>x>>y;
if(x>y) swap(x,y);//维护x比y小
double res=(sqrt(5.0)+1.0)*0.5*(y-x);//0.618黄金分割比,Betty定理
if((int)res==x) cout<<"Farmer John\n";//Farmer John必胜
else cout<<"Bessie\n";//Bessie必胜,Bessie为先手
}
// step 4、输出
return 0;
}