为什么第二个点没过。。
查看原帖
为什么第二个点没过。。
1307436
shapeshifter_lorde楼主2024/5/27 13:02
#include<bits/stdc++.h>
using namespace std;
long long t,n,a[100005];
bool f;
int main(){
	scanf("%lld",&t);
	for(int i=1;i<=t;i++){
		f=1;
		scanf("%lld",&n);
		memset(a,0,sizeof(a));
		for(int i=0;i<n;i++){
			scanf("%lld",&a[i]);
		}
		sort(a,a+n);
		if(n<2){
			if(a[1]%a[0]==0){
				printf("Yes\n");
			}
			else printf("No\n");
			continue;
		}
		for(int i=2;i<n;i++){
			if(a[i]%a[0]!=0&&a[i]%a[1]!=0){
				f=0;
				printf("No\n");
				break;
			}
		}
		if(f) printf("Yes\n");
	}
	return 0;
}
2024/5/27 13:02
加载中...