Sereja conducted a voting about N of his opinions. Ai percent of people voted for opinion number i.
This statistics is called valid if sum of all Ai is equal to 100.
Now let us define rounding up of a statistics A.
- If Ai is not an integer, it will be rounded up to next integer.
- Otherwise it will be left as it is.
e.g. 4.1 became 5, 4.9 became 5 but 6 will still be 6.
Now let us consider a statistics B of size N in which each of Bi is an integer. Now he wants to know whether there exists some valid statistic A of size N (may contain real numbers) such that after rounding it up, it becomes same as B?
Input
- First line of input contain integer T - number of test cases.
- For each test, case first line contains integer N - number of opinions.
- Next line contains N integers B1, B2, ..., BN as defined in the problem.
Output
For each test case, output YES or NO denoting the answer of the problem, i.e. if there exists some statistics A which could be rounded to make it B, print YES otherwise NO.
Constraints
- 1 ≤ T ≤ 50
- 1 ≤ N ≤ 10000
- 0 ≤ Bi ≤ 1000
Example
Input: 3 3 30 30 30 4 25 25 25 25 2 50 51 Output: NO YES YES
Explanation
- In test case 1, There can not be any A which could be rounded up to get B. Hence answer is NO.
- In test case 2, In this case A = {25, 25, 25, 25}. After rounding we get {25, 25, 25, 25} which is equal to B. Hence answer is YES.
- In test case 3, A = {49.5, 50.5}. After rounding up we get {50, 51} which is equal to B. Hence answer is YES.
#include<iostream>
#include<algorithm>
#include<string>
#include<map>
#include<set>
#include<cmath>
#include<vector>
#include<queue>
#include<string.h>
#include<stdlib.h>
#include<cstdio>
#define ll long long
using namespace std;
int main(){
int t;
scanf("%d",&t);
while(t--){
int n,a;
cin>>n;
int s1=0,s2=0,s=0; //s1:上界 s2:下界
for(int i=0;i<n;++i){
cin>>a;
s1+=a;
if(a>0)
s2+=a-1;
else{
s2+=a;
s++;
}
}
if(100>=s2&&100<=s1&&s1<100+n-s) //最后一个条件不要漏掉
cout<<"YES"<<endl;
else
cout<<"NO"<<endl;
}
return 0;
}

本文介绍了一种用于验证投票统计数据有效性的算法。该算法通过检查输入数据是否可以通过四舍五入从有效的百分比统计数据得到,解决了一个特定的问题:即如何判断给定的一组整数是否能代表经过四舍五入后的民意调查结果。文章详细解释了算法的工作原理,并提供了实现代码。
4825

被折叠的 条评论
为什么被折叠?



