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


    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


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

  • 相关阅读:
    oracle闪回某个时间段的数据
    查询某个表某个字段重复记录急重复数量
    调用腾讯QQ启动
    MongoDB笔记(二):MongoDB下Shell的基本操作
    MongoDB笔记(一):MongoDB介绍及Windows下安装
    freemarker相关
    oracle获取时间毫秒数
    如何简单地理解Python中的if __name__ == '__main__'
    python套接字基本使用
    Mysql表的约束设计和关联关系设计
  • 原文地址:https://www.cnblogs.com/hotwords/p/7744438.html
Copyright © 2020-2023  润新知