レストランの予約
このタスクでは、レストランチェーンの管理システムを設計します。Pythonクラスの
Restaurant
を作成し、make_reservation
とorder_food
の2つのメソッドを持たせてください。さらに、Restaurant
の子クラスであるFastFoodRestaurant
を設計し、make_reservation
メソッドをオーバーライドして、常にWe do not take reservations.
と出力するようにします。レストランには定められた数のテーブルがあります。各予約は1時間と想定されます。
make_reservation
メソッドはこれを処理し、希望の時間に空いているテーブルがない場合はNo seats available
と出力する必要があります。make_reservation
メソッドは3つのパラメータ——人の名前、テーブルの数、yyyy-mm-dd-hh
形式の日付と時間——を受け取ります。予約が成功した場合、メソッドはReservation made for <name> at <date>
と出力します。order_food
メソッドは、注文されたアイテムを表す任意の数の引数を受け取り、Order with <item1>, <item2>, ..., <item_n> placed!
というメッセージを出力します。入力 | 出力 |
restaurant = Restaurant('Dining Paradise', 5); restaurant.make_reservation('John', 2, '2023-10-24-19') | Reservation made for John at 2023-10-24-19 |
fast_food = FastFoodRestaurant('Burger World', 5); fast_food.make_reservation('John', 2, '2023-10-24-19'); fast_food.order_food('Burger', 'Soda') | We do not take reservations.
Order with Burger, Soda placed! |
restaurant = Restaurant('Dining Paradise', 1); restaurant.make_reservation('John', 1, '2023-10-24-19'); restaurant.make_reservation('Mary', 2, '2023-10-24-19') | Reservation made for John at 2023-10-24-19
No seats available |
現在の時刻はこの問題では関係ありません。すべての予約は有効であると仮定してください。
Constraints
Time limit: 1 seconds
Memory limit: 512 MB
Output limit: 1 MB