bong-u/til

백준 - 13398 : 연속합 2 (G5)

수정일 : 2024-11-15

 1N = int(input())
 2L = list(map(int, input().split()))
 3res = 0
 4dp = [[-1000]*N for _ in range(2)]
 5dp[0][0] = L[0]
 6for i in range(1, N):
 7    dp[0][i] = max(dp[0][i-1]+L[i], L[i])
 8    dp[1][i] = max(dp[1][i-1]+L[i], dp[0][i-1])
 9
10print (max(max(dp[0]), max(dp[1])))
  • 이번 문제에서 사용할 dp 배열의 크기는 N X 2 이다.
  • 배열은 최솟값인 -1000으로 초기화하여야 한다