zoukankan      html  css  js  c++  java
  • 【BZOJ】【1385】【Baltic2000】Division expression

    欧几里得算法

      普通的求个gcd即可……思路题

      因为要求尽量是整数……所以 $frac{x_1}{x_2*x_3*x_4*....*x_n}$是最大的结果了,因为$x_2$必须为分母,$x_1$必须为分子……$x_3$ ~ $x_n$可分子可分母,所以都丢到分子上,结果ans为整数的可能性最大=。=因为如果放下去相当于 $frac{ans}{x_i^2}$ 嗯……应该很好理解- -

     1 /**************************************************************
     2     Problem: 1385
     3     User: Tunix
     4     Language: C++
     5     Result: Accepted
     6     Time:120 ms
     7     Memory:1664 kb
     8 ****************************************************************/
     9  
    10 //BZOJ 1385
    11 #include<cstdio>
    12 #include<cstring>
    13 #include<cstdlib>
    14 #include<iostream>
    15 #include<algorithm>
    16 #define rep(i,n) for(int i=0;i<n;++i)
    17 #define F(i,j,n) for(int i=j;i<=n;++i)
    18 #define D(i,j,n) for(int i=j;i>=n;--i)
    19 using namespace std;
    20 int getint(){
    21     int v=0,sign=1; char ch=getchar();
    22     while(ch<'0'||ch>'9'){ if (ch=='-') sign=-1; ch=getchar();}
    23     while(ch>='0'&&ch<='9'){ v=v*10+ch-'0'; ch=getchar();}
    24     return v*=sign;
    25 }
    26 /******************tamplate*********************/
    27 int x[100086];
    28 inline int gcd(int a,int b){return b==0 ? a : gcd(b,a%b);}
    29 int main(){
    30     int T=getint();
    31     while(T--){
    32         int n=getint();
    33         F(i,1,n) x[i]=getint();
    34         x[2]/=gcd(x[2],x[1]);
    35         F(i,3,n){
    36             x[2]/=gcd(x[2],x[i]);
    37             if (x[2]==1) {puts("YES");break;}
    38         }
    39         if (x[2]!=1) puts("NO");
    40     }
    41     return 0;
    42 }
    View Code
  • 相关阅读:
    wpf之依赖属性
    wpf之布局控件
    WPF之绑定
    wpf之触发器
    wpf之样式
    wpf之TreeView
    wpf(五)
    【Javaweb】poi实现通过上传excel表格批量导入数据到数据库
    Java读取批量Excel文件
    Centos上通过yum命令删除有关MySQL
  • 原文地址:https://www.cnblogs.com/Tunix/p/4265313.html
Copyright © 2011-2022 走看看