Description
题目描述
C国的总统选举委员会最近遇到了一些麻烦。
他们在统计各省对H先生的支持率(百分比)时,把支持率四舍五入到了整数。等他们公布结果后,该国媒体发现这些省份的支持率之和不等于100(百分比)!在媒体黑幕声的质疑下,他们不得不找你寻求帮助。
你将得到各省四舍五入后的支持率,请计算这些省份的支持率在四舍五入前的和是否可能等于100?支持率是以百分比的形式统计的。
请注意,各省的支持率可以是一个包含任意多位的有限小数。一个小数在四舍五入到整数时,若小数点后第一位小于5则舍,大于等于5则入。
例如:
26、17、58是一种可能的支持率,因为它们可能是25.8、16.5、57.7四舍五入后得到的,而25.8+16.5+57.7=100。
49、49是一种不可能的支持率,因为当9的个数有限时,无论有多少个9,均有49.499…99+49.499…99<100。
输入格式
输入包含多组数据,第一行是一个整数T,表示数据组数。
接下来是T组数据,每组数据的第一行是一个整数N,表示参与选举的省份个数。第二行是N个整数,表示各省四舍五入后的支持率。
输出格式
对于每组数据,若是一种可能的支持率,输出Yes,否则输出No。
样例输入
2
2
49 49
3
26 17 58
样例输出
No
Yes
数据范围与约定
对于30%的数据,1<=n<=3;
对于50%的数据,1<=n<=5;
对于80%的数据,1<=四舍五入后各省的支持率<=99;
对于100%的数据,1<=T<=10,1<=n<=10000,输入数据中的所有整数均在有符号16位整数范围内。
题面补充:如果出现支持率<0||>100的情况直接输出No。
Solution
一道很欢乐又不失陷阱的数学题。
题意很清楚,这里不多说。
考虑对于一个百分率x,它的实际值在 [x-0.5, x+0.5) 间。(如果x=0则为[0, 0.5),x=100则为[99.5, 100],不过x=100的情况似乎可以忽略)
这样我们分别算出所有数取最小、最大的和L和R,如果 L<=100<R 则Yes,否则No。
Code
这么水的题还要代码吗???(自行脑补)