あなたはある飲食店でアルバイトをする会津大学生である。
飲食店従業員は
よりおいしい味で
より速いスピードで商品を提供すること
に喜びを持つように教育される。
特に”速さ”は従業員の能力に依存している部分が多いので、 どの時間帯にどのくらい提供できているかを明らかにする必要がある。
自動で商品の提供時間を計算してくれるシステムを採用している店もあるらしいが、 あなたのバイト先では手動で行っている。
会津大学生であるあなたはプログラムを作成し、手早く仕事を終わらせたい。 1日の伝票が与えられる。 提供にかかる時間が8分以下の伝票を"ok"な伝票とする。 "ok"な伝票が全体の何%を占めるかを出力するプログラムを作成せよ。
入力は複数のデータセットで与えられる。 入力の終了は0のみからなる1行から示される。 このデータは処理する必要がない。
各データセットの最初の一行は1つの整数nが与えられる。 n (0 < n ≤ 100)は伝票の総数である。 続いて n 行に渡り、
hh:mm MM
という形式にしたがって伝票の情報が与えられる。
hh:mm は伝票発行時の時刻を表している。
MM は商品提供時が時刻で何分であるかを表している。
すべて24時間表記で二桁の数字で与えられる。
例:午後11時1分なら23:01
提供には15分以上かかってないことが保証されている。
営業時間は昼の11時〜深夜2時である。営業終了後に伝票が発行されることはない。
営業終了時刻ちょうどにも発行されることはない。
入力はそれぞれのデータセットに対して以下の形式で出力しなさい。
lunch L dinner D midnight M
L, D, M, はそれぞれ、昼、夕、深夜の時間帯における"ok"な伝票の割合である。 小数点以下は切り捨てて良い。
昼は11:00 ~ 14:59, 夕は18:00~20:59, 深夜は21:00~翌01:59
に発行された伝票と定義する。 それ以外の時間に発行された伝票は無視しなければならない。 伝票が存在しない時間帯は”no guest”と出力せよ。
5 12:57 59 20:12 15 12:19 21 18:52 03 16:09 14 0
lunch 100 dinner 50 midnight no guest
整数:整数(空白)整数
のような入力は、C言語では
scanf("%d%*c%d%d",&a, &b, &c);
などと書くと読み込むことができます。