• PAT 1053. 住房空置率 (20)


    在不打扰居民的前提下,统计住房空置率的一种方法是根据每户用电量的连续变化规律进行判断。判断方法如下:

    • 在观察期内,若存在超过一半的日子用电量低于某给定的阈值e,则该住房为“可能空置”;
    • 若观察期超过某给定阈值D天,且满足上一个条件,则该住房为“空置”。

    现给定某居民区的住户用电量数据,请你统计“可能空置”的比率和“空置”比率,即以上两种状态的住房占居民区住房总套数的百分比。

    输入格式:

    输入第一行给出正整数N(<=1000),为居民区住房总套数;正实数e,即低电量阈值;正整数D,即观察期阈值。随后N行,每行按以下格式给出一套住房的用电量数据:

    K E1 E2 ... EK

    其中K为观察的天数,Ei为第i天的用电量。

    输出格式:

    在一行中输出“可能空置”的比率和“空置”比率的百分比值,其间以一个空格分隔,保留小数点后1位。

    输入样例:

    5 0.5 10
    6 0.3 0.4 0.5 0.2 0.8 0.6
    10 0.0 0.1 0.2 0.3 0.0 0.8 0.6 0.7 0.0 0.5
    5 0.4 0.3 0.5 0.1 0.7
    11 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1
    11 2 2 2 1 1 0.1 1 0.1 0.1 0.1 0.1
     1 #include<stdio.h>
     2 #include<string.h>
     3 #include<stdlib.h>
     4 #include<ctype.h>
     5 #include<math.h>
     6 
     7 int main(){
     8     int n,d;
     9     double e;
    10     scanf("%d %lf %d",&n,&e,&d); 
    11     int k;
    12     int h1=0,h2=0,n1;
    13     double temp;
    14     for(int i=0;i<n;i++){
    15         scanf("%d",&k);
    16         n1 = 0;
    17         for(int j=0;j<k;j++){
    18             scanf("%lf",&temp);
    19             if(temp<e){
    20                 n1++;
    21             }
    22         }
    23         if(k/2<n1){
    24             if(k>d)
    25                 h2++;
    26             else
    27                 h1++;
    28         }
    29     }
    30     printf("%.1lf%% %.1lf%%",(double)h1/n*100,(double)h2/n*100);    
    31 } 

    输出样例:

    40.0% 20.0%
    

    (样例解释:第2、3户为“可能空置”,第4户为“空置”,其他户不是空置。)

  • 相关阅读:
    BZOJ1045 [HAOI2008]糖果传递 && BZOJ3293 [Cqoi2011]分金币
    [BZOJ1103][POI2007]大都市meg dfs序+树状数组
    [BZOJ1122][POI2008]账本BBB 单调队列+后缀和
    [BZOJ1131][POI2008]Sta
    [BZOJ1370][Baltic2003]Gang团伙 并查集+拆点
    网易云基于 Kubernetes 的深度定制化实践
    微服务化的基石——持续集成
    微服务的接入层设计与动静资源隔离
    从互联网+角度看云计算的现状与未来(2)
    从互联网+角度看云计算的现状与未来(1)
  • 原文地址:https://www.cnblogs.com/lolybj/p/6392298.html
Copyright © 2020-2023  润新知