본문 바로가기
Beakjoon&프로그래머스/파이썬

[백준/파이썬] 10211번 Maximum Subarray

by 현장 2022. 5. 12.

-Code

import sys
input = sys.stdin.readline

for _ in range(int(input())):
    n = int(input())
    nums = list(map(int, input().split()))
    dp = [nums[0]]
    for i in range(1, n):
        dp.append(max(dp[i - 1] + nums[i], nums[i]))

    print(max(dp))

dp문제인 걸 모르고 for문으로 풀었다 틀리고 dp를 이용하여 누적 합을 구하는데 그 과정에서 지금 값과 이전 값과 지금 값의 합을 비교를 해주는 것을 빼먹어서 다시 작성하고 해결하였습니다.