※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

「AOJ1061~1070」の編集履歴(バックアップ)一覧に戻る

AOJ1061~1070 - (2012/03/22 (木) 19:22:54) の1つ前との変更点

追加された行は青色になります

削除された行は赤色になります。

+*1062 It's our delight!!
+http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=1062
+飲食店の時間帯別接客成績を計算する問題。
+何故か8分を5分と読み間違える謎のミスをしてしまう。
+簡単な問題なので丁寧に書くだけです。
 
+ #include<stdio.h>
+ void calc(int n){
+	double okLDM[3]={0,0,0},allLDM[3]={0,0,0};
+	for(int i=0;i<n;i++){
+		int hh,mm,mm2;
+		char c;
+		scanf("%d%c%d %d",&hh,&c,&mm,&mm2);
+		int add;
+		if(mm<=mm2){
+			add=(mm2-mm)<=8;
+		}else{
+			add=(mm2+60-mm)<=8;
+		}
+		if(11<=hh&&hh<=14){
+			okLDM[0]+=add;
+			allLDM[0]++;
+		}else if(18<=hh&&hh<=20){
+			okLDM[1]+=add;
+			allLDM[1]++;
+		}else if(21<=hh||hh<=1){
+			okLDM[2]+=add;
+			allLDM[2]++;
+		}
+	}
+	char text[3][10]={"lunch","dinner","midnight"};
+	for(int i=0;i<3;i++){
+		printf("%s ",text[i]);
+		if(allLDM[i]!=0){
+			printf("%d\n",(int)(okLDM[i]/allLDM[i]*100));
+		}else{
+			printf("no guest\n");
+		}
+	}
+ }
+ int main(){
+	int n;
+	while(scanf("%d",&n)){
+		if(n==0)break;
+		calc(n);
+	}
+ }