結果

問題 No.3302 Sense Battle
ユーザー 👑 SPD_9X2
提出日時 2025-10-05 14:33:32
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 1,191 ms / 2,000 ms
コード長 438 bytes
コンパイル時間 180 ms
コンパイル使用メモリ 82,312 KB
実行使用メモリ 90,220 KB
最終ジャッジ日時 2025-10-05 14:33:53
合計ジャッジ時間 17,378 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 18
権限があれば一括ダウンロードができます

ソースコード

diff #

"""

後ろから見ていく?

"""

N = int(input())


AB = []
for i in range(N):
    A,B = map(int,input().split())
    AB.append( (A,B) )

dp = [float("-inf")] * (N+1)
dp[0] = 0

for a,b in reversed(AB):

    ndp = [float("-inf")] * (N+1)

    for i in range(N+1):

        # a
        ndp[i] = max(ndp[i], dp[i] + a * i)
        # b
        if i != N:
            ndp[i+1] = max(ndp[i+1], dp[i] + b)

    dp = ndp

print (max(dp))
0