求助
查看原帖
求助
636442
yangyang1000楼主2022/12/31 17:57
#include<cstdio>
#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
 
long long t,n,a[105],bucket[1005];
 
int main()
{
	scanf("%lld",&t);
	for(long long o=1;o<=t;o++)
	{
		memset(bucket,0,sizeof(bucket));
		bool flag = true;
		scanf("%lld",&n);
		for(long long i=1;i<=n;i++) 
			scanf("%lld",&a[i]);
		
		for(long long i=1;i<=n;i++)
			for(long long j=1;j<i;j++)
				if(a[i] == a[j])
				{
					printf("NO\n");
					flag = false;
					i = n;
					break;
				}
		
		if(flag == false) continue;
		
		for(long long i=2;i<=n;i++)
		{
			bool flag2 = true;
			for(long long j=1;j<=n;j++)
			{
				bucket[a[j] % i]++;
			}
			
			for(long long j=0;j<i;j++) 
			{
				if(bucket[j] < 2)
				{
					flag2 = false;
					i = n;
					break;
				}
			}
			if(flag2)
			{
				flag = false;
				break;
			}
		}
 
		if(flag == false) printf("NO\n");
		else printf("YES\n");
	}
	return 0;
}

第四个测试样例的76行错了,有谁知道我的代码出了什么问题。

2022/12/31 17:57
加载中...