[BZOJ 5074] 小B的数字

题目传送-BZOJ5074

题意:

T组数据
你有一个数组(A),要求一个数组(B)
(B)中的数都是2的正整数次幂。
(x=prod_{i=1}^nB_i),有(x|B_i^{A_i},iin1,2,3,...,n)成立
(T le 10,n le 100000)

题解:

首先(B)可以直接转化为每个元素的指数,限制就是(x=sum_{i=1}^nB_i),有(xle B_i*A_i,iin1,2,3,...,n)成立
所以(B_i ge frac{x}{A_i})所以(x ge x*sum_{i=1}^nfrac{1}{a_i})
(over)

过程:

一切顺利

代码:

const int N=100010;
int T,n;
double p;
int main() {
	read(T);
    while(T--) {
        read(n); p=0;
        for (int i=1,x;i<=n;i++){
            read(x);
            p=p+1.0/x;
        }
        puts(p>1 ? "NO" : "YES");
    }
    return 0;
}

用时:3min

原文地址:https://www.cnblogs.com/functionendless/p/9545948.html