結果
| 問題 |
No.586 ダブルブッキング
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2017-11-14 17:40:42 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
AC
|
| 実行時間 | 29 ms / 2,000 ms |
| コード長 | 692 bytes |
| コンパイル時間 | 391 ms |
| コンパイル使用メモリ | 12,544 KB |
| 実行使用メモリ | 10,752 KB |
| 最終ジャッジ日時 | 2024-11-25 02:09:01 |
| 合計ジャッジ時間 | 884 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 5 |
ソースコード
yuki_hotel_price = int(input())
transfer_hotel_price = int(input())
booking_num = int(input())
booking_room_numbers = []
transferred_room_numbers = []
for i in range(booking_num):
booking_room_numbers.append(int(input()))
loss_amount = 0
for num in booking_room_numbers:
# 振替済みなら何もしない
if num in transferred_room_numbers:
continue
# 重複予約
double_booking_num = booking_room_numbers.count(num)
if double_booking_num >= 2:
# 損失費用の加算
loss_amount += (double_booking_num - 1)*yuki_hotel_price + (double_booking_num - 1)*transfer_hotel_price
# 振替済みに追加
transferred_room_numbers.append(num)
print(loss_amount)