参看《算法竞赛入门经典训练指南》
#include<iostream>
#include<cstdio>
using namespace std;
inline int read(){
int x=0,f=1;char ch=getchar();
while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();}
while(ch>='0'&&ch<='9'){x=x*10+ch-'0';ch=getchar();}
return x*f;
}
inline int gcd(int a,int b){return b?gcd(b,a%b):a;}
int d,n,t,a[10001];
int main(){
d=read();
for(int i=1;i<=d;i++){
n=read();a[1]=read();t=read();
for(int i=2;i<=n-1;i++)a[i]=read();
for(int i=1;i<n;i++){
t/=gcd(t,a[i]);
if(t==1){printf("YES\n");break;}
}
if(t!=1)printf("NO\n");
}
return 0;
}