题目传送-BZOJ5074
题意:
T组数据
你有一个数组\(A\),要求一个数组\(B\)
\(B\)中的数都是2的正整数次幂。
令\(x=\prod_{i=1}^nB_i\),有\(x|B_i^{A_i},i\in1,2,3,...,n\)成立
\(T \le 10,n \le 100000\)
题解:
首先\(B\)可以直接转化为每个元素的指数,限制就是\(x=\sum_{i=1}^nB_i\),有\(x\le B_i*A_i,i\in1,2,3,...,n\)成立
所以\(B_i \ge \frac{x}{A_i}\)所以\(x \ge x*\sum_{i=1}^n\frac{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