PAT乙级-1053 住房空置率

2024-01-15 19:30
文章标签 pat 住房 1053 乙级 空置率

本文主要是介绍PAT乙级-1053 住房空置率,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

题目描述

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

在观察期内,若存在超过一半的日子用电量低于某给定的阈值 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
输出样例:
40.0% 20.0%
(样例解释:第2、3户为“可能空置”,第4户为“空置”,其他户不是空置。)

实现代码

在这里插入代码片#include<iostream>
#define M 10000using namespace std;int main(void)
{int N;double e;int D;cin>>N>>e>>D;int num1=0;int num2=0;for(int i=0;i<N;i++){int k;cin>>k;double E[k];int day=0;for(int j=0;j<k;j++){cin>>E[j];if(E[j]<e){day++;}}if(day>(int)(k/2+0.5)&&k>D)//天数要四舍五入 {num2++;}else if(day>(int)(k/2+0.5)){num1++;}}double r1=(double)num1/N;double r2=(double)num2/N;printf("%.1lf%% %.1lf%%\n",r1*100,r2*100);//注意输出格式 
}

平台测试结果

在这里插入图片描述

学习收获

关于整数的除法问题,大部分都需要进行四舍五入的操作。

这篇关于PAT乙级-1053 住房空置率的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/609964

相关文章

PAT甲级-1044 Shopping in Mars

题目   题目大意 一串项链上有n个钻石,输入给出每个钻石的价格。用m元买一个连续的项链子串(子串长度可为1),如果不能恰好花掉m元,就要找到最小的大于m的子串,如果有重复就输出多个,按递增顺序输出子串的前端和后端索引。 原来的思路 取连续的子串使和恰等于m,没有恰等于就找最小的大于。可以将子串依次累加,使得每个位置都是起始位置到该位置的序列和,整个数组显递增顺序,就可以用右边减左边

PAT (Advanced Level) Practice——1011,1012

1011:  链接: 1011 World Cup Betting - PAT (Advanced Level) Practice (pintia.cn) 题意及解题思路: 简单来说就是给你3行数字,每一行都是按照W,T,L的顺序给出相应的赔率。我们需要找到每一行的W,T,L当中最大的一个数,累乘的结果再乘以0.65,按照例子写出表达式即可。 同时还需要记录每一次选择的是W,T还是L

住房要注意用电安全-记录一下失火

背景: 凌晨12点到家,打开门发现等打不开,屋里有一股味道。 随机打开手机闪光灯,拍照如下: 事件起因: 当时早上我洗完头,想用吹风机吹头,结果没有电了,我就随手把吹风机放到了洗衣机上,就去上班了。 应该是在我上班去了之后,通了电,我用的劣质的吹风机,不具备高温自动断电的能力,结果就着火了。 幸亏门窗紧闭,不然会一直烧一下。 当时我还住了一晚上,第二天和同事说话 他问我吸烟了?

PAT (Advanced Level) Practice

1001:  题目大意: 计算 a+b 的结果,并以标准格式输出——即每三个数字一组,组之间用逗号分隔(如果数字少于四位,则不需要逗号分隔)  解析: 我们知道相加右正有负,对于样例来说 Sample Input: -1000000 9 Sample Output: -999,991 如果是从左往右,算上负号的话输出应该是-99,999,1 从右往左:-,999,991离正确

1050 String Subtraction——PAT甲级

Given two strings S1​ and S2​, S=S1​−S2​ is defined to be the remaining string after taking all the characters in S2​ from S1​. Your task is simply to calculate S1​−S2​ for any given strings. However,

洛阳送变电工程设计乙级资质申请流程方法

一、前期准备 确认资质申请条件:查阅最新的《电力行业送变电工程设计企业资质标准》和地方相关政策。 确认企业的注册资金、技术人员配置、办公场所、技术装备等是否符合资质标准的要求。 组织技术人员:配置齐全合理的专业技术人员,包括但不限于: 注册电气工程师(发输变电)若干名 二级/一级注册结构工程师 二级注册建筑师 给排水、暖通中级工程师各至少一名 电力系统、通信保护、概预算、总图高级工

1105 链表合并——PAT乙级

给定两个单链表 L1​=a1​→a2​→⋯→an−1​→an​ 和 L2​=b1​→b2​→⋯→bm−1​→bm​。如果 n≥2m,你的任务是将比较短的那个链表逆序,然后将之并入比较长的那个链表,得到一个形如 a1​→a2​→bm​→a3​→a4​→bm−1​⋯ 的结果。例如给定两个链表分别为 6→7 和 1→2→3→4→5,你应该输出 1→2→7→3→4→6→5。 输入格式: 输入首先在第一

1110 区块反转——PAT乙级

给定一个单链表 L,我们将每 K 个结点看成一个区块(链表最后若不足 K 个结点,也看成一个区块),请编写程序将 L 中所有区块的链接反转。例如:给定 L 为 1→2→3→4→5→6→7→8,K 为 3,则输出应该为 7→8→4→5→6→1→2→3。 输入格式: 每个输入包含 1 个测试用例。每个测试用例第 1 行给出第 1 个结点的地址、结点总个数正整数 N (≤105)、以及正整数 K (

企业如何制定给排水乙级资质续期财务预算?

企业在制定给排水乙级资质续期财务预算时,需要综合考虑多个因素,以确保预算的准确性和可行性。以下是一个详细的制定步骤和要点: 一、明确预算目标和范围 首先,企业应明确给排水乙级资质续期的预算目标,即确保资质顺利延续并满足相关要求。同时,界定预算的范围,包括所有与资质续期直接相关的费用支出。 二、收集相关信息和数据 评审机构要求:详细了解评审机构对资质续期的具体要求、流程和费用标准。企业内

3月份目标——刷完乙级真题

https://www.patest.cn/contests/pat-b-practisePAT (Basic Level) Practice (中文) 标号标题通过提交通过率1001害死人不偿命的(3n+1)猜想 (15)31858792260.41002写出这个数 (20)21702664840.331003我要通过!(20)11071447060.251004成绩排名 (20)159644