類題 解答・解説まとめ

第3問 問1 類題

問1 類題

答え:

1人目:待ち時間 0分
2人目:待ち時間 2分
3人目:待ち時間 0分

理由: 1人目は0分に到着し,すぐに体験を開始できるため, 待ち時間は0分です。

1人目の終了時刻は, 0 + 4 = 4分です。

2人目は2分に到着しましたが, 1人目が4分まで体験中なので, 4分から開始します。

したがって, 2人目の待ち時間は 4 − 2 = 2分です。

2人目の終了時刻は, 4 + 4 = 8分です。

3人目は9分に到着しました。 この時点で2人目は8分に終了しているため, すぐに開始できます。

したがって, 3人目の待ち時間は0分です。

補足: 「到着した時点で前の人が終わっているか」を考えることがポイントです。

第3問 問2 類題

問2 類題

答え:

来訪者 開始時刻 終了時刻 待ち時間
2人目 4分 8分 2分
3人目 9分 13分 0分

理由: 2人目の到着時刻は2分, 1人目の終了時刻は4分です。

開始時刻は, 「到着時刻」と「直前の終了時刻」の遅い方なので,

開始時刻 = 最大値(2, 4) = 4分

終了時刻は, 開始時刻 + 体験時間なので,

4 + 4 = 8分

待ち時間は, 開始時刻 − 到着時刻なので,

4 − 2 = 2分

次に3人目について考えます。 到着時刻は9分, 2人目の終了時刻は8分です。

開始時刻 = 最大値(9, 8) = 9分

終了時刻 = 9 + 4 = 13分

待ち時間 = 9 − 9 = 0分

補足: プログラムでは, 「開始時刻 → 終了時刻 → 待ち時間」 の順に計算していました。

第3問 問3 類題

第3問 問3 類題

答え:

問1 ②
問2 3分まで
問3 4回

理由: 最長待ち時間が5分間未満である間だけ処理を続けたいので, 繰り返し条件は saichou < 5 となります。

図4の結果を見ると, 体験時間1分では最長待ち時間0分, 2分では2分, 3分では4分なので, すべて5分未満です。

しかし, 体験時間4分では最長待ち時間8分となり, 5分未満ではありません。

そのため, 表示されるのは体験時間3分までです。

一方, 「5分未満ではない」と判定するためには, 体験時間4分の処理を実際に実行する必要があります。

したがって, 配列 Kaishi の初期化処理は, 1分・2分・3分・4分の 合計4回実行されます。

補足: 「表示される回数」と 「条件確認のために実行される回数」は 同じとは限らない点に注意しましょう。

Well done!

次のステップに進みましょう!

次のステップに進む

← 前のステップにもどる