PAT Bブラシロード1053タイトルハウジング空孔率(20点)

1053ハウジングの空孔率(20点)

ディスターブ住民ことなく、方法の統計ハウジング空孔率は、家庭に係る電気の連続的な変化によって判断されます。以下のように決定:
観察期間中、その日の電力の半分が所定の閾値E未満である以上存在する場合、ハウジングは「空」であり、
観察期間が所定の閾値D日を超え、満足場合条件のための住宅「空いています。」
今、家庭の電力消費量のデータを、あなたの統計「空いている」割合と「空室」率、住宅の全単位の割合としてつ以上の状態をあるハウジングの住宅地を与えられました。

入力フォーマット:
最初の行の入力がNの整数正(≤1000)を与えられ、住宅の全単位; Eの正の実数、低電池閾値、正の整数D、観察期間しきい値。次いで、N行、次の形式で各ハウジング所定の電力消費データ:
K E1 E 2 ... Kは、観察の日数であるEK、E 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
1122211 0.1 1 0.1 0.1 0.1 0.1
出力サンプル:
40.0%20.0%(試料説明:2,3世帯を「空」に最初の4つは、他のドアが空でない場合、「空き」として)。

入力側縁の統計である必要があり、何度も繰り返し1を超えるものを入力しないでください

#include<bits/stdc++.h>
using namespace std;
const int N=1100;
double a[N];
int main()
{	
	int k,i;	
	double m,u,cnt1=0,cnt2=0;
	double e;
	double A,B;	
	scanf("%lf%lf%d",&m,&e,&k);	
	u=m;	
	while(m--){		
		int y=0;		
		int n,x;		
		scanf("%d",&n);	
		x=n/2;		
		for(i=0;i<n;i++){			
			scanf("%lf",&a[i]);			
			if(a[i]<e){				
				y++;     //统计低于电量阈值的个数 			
			}		
		}		
		if(y>x&&n<=k){			
			cnt1++;     //可能空置个数 		
		}else if(n>k&&y>x){			
			cnt2++;     //空置个数 		
		}	
	}	
	A=cnt1/u*100;	
	B=cnt2/u*100;	
	printf("%.1lf%% ",A);	
	printf("%.1lf%%",B);	
	return 0;
} 

公開された73元の記事 ウォンの賞賛0 ビュー536

おすすめ

転載: blog.csdn.net/derbi123123/article/details/103793408
おすすめ