• 微信公众号:美女很有趣。 工作之余,放松一下,关注即送10G+美女照片!

AT3939 [ARC091D] Strange Nim

开发技术 开发技术 1周前 (06-11) 10次浏览

题链
打表找规律SG,然后发现可以通过整除分块加速(列方程求出y)

#include<bits/stdc++.h>
using namespace std;

int T,K;
int ask(int n) {
	if(n<K) return 0;
	if(n%K==0) return n/K;
	int x=n/K,y=(n-K*x)/(x+1);
	if(y==0) return ask(n-x-1);
	return ask(n-y*(x+1));
}
int main() {
	scanf("%d",&T);
	int ans=0;
	while(T--) {
		int x; scanf("%d%d",&x,&K);
		ans^=ask(x);
	}
	if(!ans)  puts("Aoki");
		else puts("Takahashi");
	return 0;
}


程序员灯塔
转载请注明原文链接:AT3939 [ARC091D] Strange Nim
喜欢 (0)