神奇 TLE
查看原帖
神奇 TLE
989792
lrx___楼主2024/6/2 16:38
#include<cstdio>
#include<algorithm>
using std::sort;
using std::unique;

/*

*/

const int N(1e5+5);
int a[N],T,n;

int main(){
	bool ans,flag;
	int i1;
	for(scanf("%d",&T);T--;){
		scanf("%d",&n);
		for(i1=1;i1<=n;++i1){
			scanf("%d",a+i1);
		}
		sort(a+1,a+n+1);
		n=unique(a+1,a+n+1)-(a+1);
		ans=true;flag=true;
		for(i1=1;i1<=n;++i1){
			if(a[i1]-a[i1-1]==1){
				ans^=true;
			}else{
				printf(ans?"Alice\n":"Bob\n");
				flag=false;break;
			}
		}
		if(flag){
			ans^=true;
			printf(ans?"Alice\n":"Bob\n");
		}
	}
	return 0;
}

自己一点问题都找不到。

时间复杂度应该没问题,就一个 sort 和 unique。

2024/6/2 16:38
加载中...