結果

問題 No.2889 Rusk
コンテスト
ユーザー adapchi
提出日時 2024-09-13 21:47:02
言語 PyPy3
(8.0.0 + ACL)
コンパイル:
pypy3 -mpy_compile _filename_
実行:
pypy3 _filename_
結果
WJ  
(最新)
AC  
(最初)
実行時間 -
コード長 630 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
最終ジャッジ日時 2026-08-26 13:30:10
ジャッジサーバーID
(参考情報)
judge3_0 / judge1_0
このコードへのチャレンジ
(要ログイン)

ソースコード

diff #
raw source code

N = int(input())
A = list(map(int, input().split()))
B = list(map(int, input().split()))
C = list(map(int, input().split()))

def solve1():
  dp = [0] * 5
  
  for i in range(N):
    for j in range(4):
      dp[j + 1] = max(dp[j + 1], dp[j])
        
    dp[0] += A[i]
    dp[1] += B[i]
    dp[2] += C[i]
    dp[3] += B[i]
    dp[4] += A[i]
  return max(dp)

def solve2():
  dp = [0] * 5
  
  for i in range(N):
    for j in range(4):
      dp[j + 1] = max(dp[j + 1], dp[j])
        
    dp[0] += A[i]
    dp[1] += B[i]
    dp[2] += A[i]
    dp[3] += B[i]
    dp[4] += A[i]
  return max(dp)
  
print(max(solve1(), solve2()))
  
  
0