[bzoj1385]Division expression

Posted pywbktda

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[bzoj1385]Division expression相关的知识,希望对你有一定的参考价值。

容易发现a2一定是分母,且容易做到其余都是分子,因此相当于判定a2能否整除a1*a3*……*an,不断让a2除以其与其他数的gcd即可(注意特判n=1)

技术图片
 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 int t,n,s,x;
 4 int gcd(int x,int y){
 5     if (!y)return x;
 6     return gcd(y,x%y);
 7 }
 8 int main(){
 9     scanf("%d",&t);
10     while (t--){
11         scanf("%d%d",&n,&x);
12         if (n==1){
13             printf("YES
");
14             continue;
15         }
16         scanf("%d",&s);
17         s/=gcd(s,x);
18         for(int i=3;i<=n;i++){
19             scanf("%d",&x);
20             s/=gcd(s,x);
21         }
22         if (s==1)printf("YES
");
23         else printf("NO
");
24     }
25 }
View Code

 

以上是关于[bzoj1385]Division expression的主要内容,如果未能解决你的问题,请参考以下文章

BZOJ 4421 Digit Division

BZOJ4421[Cerc2015] Digit Division 动态规划

bzoj 4421: [Cerc2015] Digit Division

bzoj3944Sum

hihoCoder 1385 A Simple Job

codevs——1385 挤牛奶