結果
| 問題 | No.1015 おつりは要らないです |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2020-06-27 15:34:49 |
| 言語 | PyPy3 (7.3.17) |
| 結果 |
AC
|
| 実行時間 | 163 ms / 2,000 ms |
| コード長 | 817 bytes |
| 記録 | |
| コンパイル時間 | 168 ms |
| コンパイル使用メモリ | 85,504 KB |
| 実行使用メモリ | 95,616 KB |
| 最終ジャッジ日時 | 2026-05-12 19:54:55 |
| 合計ジャッジ時間 | 5,307 ms |
|
ジャッジサーバーID (参考情報) |
judge2_1 / judge1_1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 |
| other | AC * 33 |
ソースコード
from heapq import heappop, heapify, heappush
n, x, y, z = map(int, input().split())
A = list(int(-a) for a in map(int, input().split()))
heapify(A)
if n > x + y + z or -sum(A) >= x * 1000 + y * 5000 + z * 10000:
print("No")
exit()
while A:
if not z:
break
a = -heappop(A)
if a >= 10000:
t = min(a // 10000, z)
z -= t
a -= 10000 * t
heappush(A, -a)
else:
z -= 1
while A:
if not y:
break
a = -heappop(A)
if a >= 5000:
t = min(a // 5000, y)
y -= t
a -= 5000 * t
heappush(A, -a)
else:
y -= 1
while A:
if not x:
break
a = -heappop(A)
t = min((a + 1000) // 1000, x)
x -= t
a -= t * 1000
if a >= 0:
heappush(A, -a)
print("No" if A else "Yes")