結果
問題 | No.258 回転寿司(2) |
ユーザー |
![]() |
提出日時 | 2015-10-20 14:34:18 |
言語 | Python2 (2.7.18) |
結果 |
AC
|
実行時間 | 458 ms / 2,000 ms |
コード長 | 479 bytes |
コンパイル時間 | 352 ms |
コンパイル使用メモリ | 7,040 KB |
実行使用メモリ | 8,576 KB |
最終ジャッジ日時 | 2024-11-06 18:56:03 |
合計ジャッジ時間 | 13,441 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 67 |
ソースコード
import sysN=input()V=map(int,raw_input().split())dp=[0 for _ in range(N)]r=[[] for _ in range(N)]if N == 1:print V[0]print 1sys.exit()dp[0]=V[0]r[0]=[1]if V[0] < V[1]:dp[1] = V[1]r[1] = [2]else:dp[1] = V[0]r[1] = [1]for i in range(2,N):for j in range(0,i-1):if dp[j]+V[i] > dp[i]:dp[i]=dp[j]+V[i]r[i]=list(r[j])r[i].append(i+1)if dp[i] < dp[i-1]:dp[i]=dp[i-1]r[i]=r[i-1]print dp[N-1]print ' '.join(map(str,r[N-1])).rstrip(' ')