赛时代码:
#include<bits/stdc++.h>
using namespace std;
int arr[1000010];
int main(){
int t;
cin>>t;
while(t--){
memset(arr,0,sizeof(arr));
int n;
cin>>n;
for(int i=1;i<=n;i++){
cin>>arr[i];
}
sort(arr+1,arr+n+1);
int l=true;
for(int i=3;i<=n;i++){
if(__gcd(arr[i-1],arr[i])!=arr[i-2]){
l=false;
break;
}
}
if(l){
cout<<"Yes"<<endl;
}else{
cout<<"No"<<endl;
}
}
return 0;
}
AC了
为啥最后的一个数据就过不了