結果
| 問題 |
No.1015 おつりは要らないです
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2020-04-03 21:55:26 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,164 bytes |
| コンパイル時間 | 84 ms |
| コンパイル使用メモリ | 12,672 KB |
| 実行使用メモリ | 21,728 KB |
| 最終ジャッジ日時 | 2024-07-03 02:24:20 |
| 合計ジャッジ時間 | 6,204 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 |
| other | AC * 18 WA * 15 |
ソースコード
import math
N, X, Y, Z = map(int, input().split())
A = list(map(int, input().split()))
A.sort(reverse=True)
for a in A:
# 1万円以上なら
if a >= 10001:
if a <= 10000*Z:
Z -= a // 10000
a -= (a // 10000)*10000
else:
a -= 10000*Z
Z = 0
# 5千円以上なら
if a >= 5001:
if a <= 5000*Y:
Y -= a // 5000
a -= (a // 5000)*5000
else:
a -= 5000*Y
Y = 0
# 千円で払えるだけ払う
if a > 0:
if a < 1000*X:
X -= a // 1000+1
a -= (a // 1000 + 1) * 1000
else:
a -= 1000*X
X = 0
# 千円が不足しているなら5千円で払う
if a > 0:
if a < 5000*Y:
Y -= a // 5000+1
a -= (a // 5000 + 1) * 5000
else:
a -= 5000*Y
Y = 0
# 千円と5千円が不足しているなら1万円で払う
if a > 0:
if a < 10000*Z:
Z -= a // 10000+1
a -= (a // 10000 + 1) * 10000
else:
print('No')
exit(0)
print('Yes')