本文主要是介绍PAT Basic Level 1053 住房空置率 解题思路及AC代码,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
PAT 乙级 1053 住房空置率 v1.0
- 1. 题目简述及在线测试位置
- 2. 基本思路
- 3. 完整AC代码
1. 题目简述及在线测试位置
1.1 根据已知条件(条件1:在观察期内,若存在超过一半的日子用电量低于电量阈值,该住房“可能空置”;条件2:若观察期超过观察期阈值,且满足条件1,该住房为“空置”),统计 可能空置房屋 和 空置房屋。
1.2 在线测试位置: 1053 住房空置率
2. 基本思路
根据题意编码进行条件判定。注意:空置 和 可能空置 是互斥关系;可以通过 printf("%%") 打印输出 %
3. 完整AC代码
#include <iostream>
using namespace std;int main()
{int Number;double Threshold;int MonitorDays;cin >> Number >> Threshold >> MonitorDays; //住房总数 电量阈值 观察期阈值//条件1:在观察期内,若存在超过一半的日子用电量低于Threshold,该住房“可能空置”//条件2:若观察期超过MonitorDays,且满足条件1,该住房为“空置”int Days, bak, Count = 0; double Consume; //Days代表实际观察天数int MaybeIdle=0, Idle=0; //可能空置 空置for(int i=0;i<Number;i++){cin >> Days;bak = Days;while (bak--){cin >> Consume;if (Consume < Threshold)Count++; }if (Count * 2 > Days && Days > MonitorDays)//满足条件1和条件2Idle++;else if (Count * 2 > Days) //只满足条件1MaybeIdle++;Count = 0;}printf("%0.1f%% ", (float)MaybeIdle / Number*100);printf("%0.1f%%", (float)Idle / Number*100);return 0;
}
这篇关于PAT Basic Level 1053 住房空置率 解题思路及AC代码的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!