結果
| 問題 |
No.1736 Princess vs. Dragoness
|
| コンテスト | |
| ユーザー |
lam6er
|
| 提出日時 | 2025-04-15 22:55:13 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,195 bytes |
| コンパイル時間 | 448 ms |
| コンパイル使用メモリ | 81,644 KB |
| 実行使用メモリ | 76,112 KB |
| 最終ジャッジ日時 | 2025-04-15 22:56:57 |
| 合計ジャッジ時間 | 4,716 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 26 WA * 7 |
ソースコード
import sys
def main():
N, A, B, X, Y = map(int, sys.stdin.readline().split())
H = list(map(int, sys.stdin.readline().split()))
# Initial approach: try all possible B_used, compute required A
for B_used in range(B + 1):
D = B_used * Y
remaining_H = H.copy()
for i in range(N):
if D <= 0:
break
damage = min(D, remaining_H[i])
remaining_H[i] -= damage
D -= damage
sum_A = 0
for h in remaining_H:
if h > 0:
sum_A += (h + X - 1) // X
if sum_A <= A:
print("Yes")
return
# Split approach: try all possible k, split into A and B
for k in range(N + 1):
sum_A = 0
valid = True
for i in range(k):
needed = (H[i] + X - 1) // X
sum_A += needed
if sum_A > A:
valid = False
break
if not valid:
continue
sum_B = sum(H[i] for i in range(k, N))
if sum_B <= B * Y:
print("Yes")
return
print("No")
if __name__ == "__main__":
main()
lam6er