CF914B题解

发布时间 2023-10-18 22:55:21作者: Xu_dh

一道简单的博弈论。

思路

我们可以先记录每张牌的个数,如果这个牌的个数为奇数,则 Conan 胜利,如果全部为偶数,Agase 胜利。

证明

如果说所有牌为偶数,那么无论 Conan 取哪张牌,Agasa 都可以和他取一样的,最终让 Conan 失败。

如果不满足,那么 Agasa 会无法操作。

AC CODE

#include<bits/stdc++.h>
using namespace std;
#define int long long
int bk[100005],n;
signed main(){
	scanf("%lld",&n);
	for(int i=1,x;i<=n;i++){
		scanf("%lld",&x);
		bk[x]++;
	}
	for(int i=1;i<=100000;i++){
		if(bk[i]%2){
			puts("Conan");
			return 0;
		}
	}
	puts("Agasa");
	return 0;
}

话说 Agase 真的是绝顶聪明的玩家吗?