2017-10-27模拟赛2-T1 选举(election.*)

时间:2021-11-15 10:18:32

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


这么水的题还要代码吗???(自行脑补)