五一训练礼包c-3
判断那些是最小值的倍数,然后对数组排序,和原数组对比
#include<stdio.h> #include<algorithm> using namespace std; int NN=100000 int main(){ int t,n,a[NN],b[NN],c[NN],min,j=0,but=1,i; scanf("%d",&t); while(t--){ but=1; j=0; scanf("%d",&n); for(i=0;i<n;i++){ scanf("%d",&a[i]); b[i]=a[i]; } sort(b,b+n); min=b[0]; for(i=0;i<n;i++){ if(a[i]!=b[i]){ c[j++]=a[i]; } } for(i=0;i<j;i++){ if(c[i]%min!=0){ printf("NO\n"); but=0;break; } } if(but==1){ printf("YES\n"); } } return 0; }
posted on 2021-05-06 00:31 wvellichor 阅读(25) 评论(0) 编辑 收藏 举报