在不打擾居民的前提下,統計住房空置率的一種方法是根據每戶用電量的連續變化規律進行判斷。判斷方法如下:
在觀察期內,若存在超過一半的日子用電量低於某給定的閾值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戶為「空置」,其他戶不是空置)maybe表示可能空置,must表示空置,對於每乙個用電資料,判斷是否小於閾值e,累計小於e的次數sum,如果sum > (k / 2),表示超過一半的日子低於閾值e,說明可能空置,再判斷觀察期k是否大於d,如果大於說明是空置,must++,否則是可能空置,maybe++,最後輸出可能空置率maybe/n和空置率must/n~注意,printf中要使用兩個百分號%%表示輸出乙個百分號~
#include using namespace std;
int main()
if(sum > (k / 2))
}double mayberesult = (double)maybe / n * 100;
double mustresult = (double)must / n * 100;
printf("%.1f%% %.1f%%", mayberesult, mustresult);
return 0;
}
(乙)1053 住房空置率 (20 分
在不打擾居民的前提下,統計住房空置率的一種方法是根據每戶用電量的連續變化規律進行判斷。判斷方法如下 現給定某居民區的住戶用電量資料,請你統計 可能空置 的比率和 空置 比率,即以上兩種狀態的住房佔居民區住房總套數的百分比。輸入格式 輸入第一行給出正整數 n 1000 為居民區住房總套數 正實數 e,...
PAT乙級1053 住房空置率 20
題目 在不打擾居民的前提下,統計住房空置率的一種方法是根據每戶用電量的連續變化規律進行判斷。判斷方法如下 現給定某居民區的住戶用電量資料,請你統計 可能空置 的比率和 空置 比率,即以上兩種狀態的住房佔居民區住房總套數的百分比。輸入格式 輸入第一行給出正整數n 1000 為居民區住房總套數 正實數e...
pat 乙級 1053 住房空置率 20
1053.住房空置率 20 時間限制 400 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 chen,yue 在不打擾居民的前提下,統計住房空置率的一種方法是根據每戶用電量的連續變化規律進行判斷。判斷方法如下 現給定某居民區的住戶用電量資料,請你統計 ...