結果
問題 | No.1430 Coup de Coupon |
ユーザー |
![]() |
提出日時 | 2023-04-18 12:19:53 |
言語 | PyPy3 (7.3.15) |
結果 |
RE
|
実行時間 | - |
コード長 | 690 bytes |
コンパイル時間 | 163 ms |
コンパイル使用メモリ | 82,312 KB |
実行使用メモリ | 78,112 KB |
最終ジャッジ日時 | 2024-10-13 10:39:46 |
合計ジャッジ時間 | 4,607 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 2 WA * 9 RE * 16 |
ソースコード
import sysreadline = sys.stdin.readlineN, C = map(int, readline().split())P = [0] * Nfor i in range(N):P[i] = int(readline())X1, X2 = [], []for i in range(C):T, X = map(int, readline().split())if T == 1:X1.append(X)else:X2.append(X)C1, C2 = len(X1), len(X2)X1.sort(reverse=True)X2.sort(reverse=True)inf = 10 ** 18pre = [-inf] * Cpre[0] = 0for i in range(min(N, C)):dp = [-inf] * Cfor j in range(C1):dp[j + 1] = max(dp[j + 1], pre[j] + min(P[i], X1[j]))j2 = i - jif j2 >= C2:continuedp[j] = max(dp[j], pre[j] + P[i]//100 * X2[j2])dp, pre = pre, dpprint(sum(P) - max(pre))