結果

問題 No.324 落ちてた閉路グラフ
コンテスト
ユーザー Tawara
提出日時 2015-12-17 02:57:46
言語 PyPy2
(7.3.20)
コンパイル:
pypy2 -m py_compile _filename_
実行:
/usr/bin/pypy2 Main.pyc
結果
MLE  
実行時間 -
コード長 544 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 1,651 ms
コンパイル使用メモリ 80,896 KB
実行使用メモリ 1,081,216 KB
最終ジャッジ日時 2026-04-05 12:19:01
合計ジャッジ時間 20,045 ms
ジャッジサーバーID
(参考情報)
judge3_0 / judge2_1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 30 MLE * 4
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

MIN = -10**6
n,m = map(int,raw_input().split())
w = map(int,raw_input().split())
if m==0:print 0;quit()
if m==n:print sum(w);quit()
def solve(s):
	dp = [[[MIN]*2 for i in xrange(m+2)] for i in xrange(n)]
	dp[0][s][s] = 0
	for i in xrange(n-1):
		for j in xrange(max(s,i+m-s-n+1),min(i+s,m)+1):
			for k in xrange(2):
				if dp[i][j][k] == MIN:continue
				dp[i+1][j][0] = max(dp[i+1][j][0],dp[i][j][k])
				dp[i+1][j+1][1] = max(dp[i+1][j+1][1],dp[i][j][k]+w[i]*k)
	return max(dp[n-1][m][0],dp[n-1][m][1]+w[n-1]*s)
print max(solve(0), solve(1))
0