标签:
欧几里得算法。可以发现规律,a[2]作为分母,其他作为分子,必定是最好的选择。判断是否为整数即可。
#include<cstdio> #include<cstring> #include<iostream> #include<algorithm> using namespace std; #define rep(i,s,t) for(int i=s;i<=t;i++) int read(){ int x=0;char c=getchar(); while(!isdigit(c)) c=getchar(); while(isdigit(c)) x=x*10+c-‘0‘,c=getchar(); return x; } int gcd(int a,int b){ return b?gcd(b,a%b):a; } int a[10005]; int main(){ int cas=read(); rep(i,1,cas){ int n=read();a[1]=read();int temp=read(); rep(i,2,n-1) a[i]=read(); rep(i,1,n-1) { temp/=gcd(temp,a[i]); if(temp==1) { printf("YES\n");break; } } if(temp!=1) printf("NO\n"); } return 0; }
bzoj1385: [Baltic2000]Division expression
标签:
原文地址:http://www.cnblogs.com/fighting-to-the-end/p/5724167.html