結果

問題 No.324 落ちてた閉路グラフ
コンテスト
ユーザー tjake
提出日時 2015-12-17 13:41:10
言語 PyPy2
(7.3.20)
結果
AC  
実行時間 378 ms / 5,000 ms
コード長 651 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 249 ms
コンパイル使用メモリ 77,864 KB
最終ジャッジ日時 2025-12-03 18:40:43
ジャッジサーバーID
(参考情報)
judge3 / judge5
純コード判定しない問題か言語
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 34
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

r = lambda: map(int, raw_input().split())
n, m = r()
if m<2:
    print 0
    exit(0)
w = r()
INF = 10**9
rm = range(m)
rm1 = range(m+1)
def solve(b):
    dp = r_dp; rs = r_rs
    ret = -INF
    for i in xrange(1,n-1):
        wi = w[i-1]
        dp2 = [-INF] + [max(dp[j]+wi, rs[j]) for j in rm]
        for j in rm1:
            rs[j] = max(dp[j], rs[j])
        dp = dp2
        ret = max(ret, dp[m])
    wi = w[-2]
    dp2 = [-INF] + [max(dp[j]+wi, rs[j])+b for j in rm]
    return max(ret, dp2[m])

r_dp = [-INF]*(m+1); r_rs = [-INF]*(m+1)
r_dp[1] = 0
rr = solve(w[-1])
r_dp = [-INF]*(m+1); r_rs = [-INF]*(m+1)
r_rs[0] = 0
print max(rr, solve(0))
0