전.py

백준 1912 연속합

jeonnew 2020. 12. 14. 17:34
728x90

https://www.acmicpc.net/problem/1912

 

1912번: 연속합

첫째 줄에 정수 n(1 ≤ n ≤ 100,000)이 주어지고 둘째 줄에는 n개의 정수로 이루어진 수열이 주어진다. 수는 -1,000보다 크거나 같고, 1,000보다 작거나 같은 정수이다.

www.acmicpc.net

n = int(input())
m = list(map(int, input().split()))

r = m[0]
result = max(m)

if max(m)<0:
    print(max(m))
else:
    for i in range(1, n):
        r += m[i]
        if r < 0:
            r = 0
        result = max(result,r)
    print(result)
n = int(input())
l = list(map(int, input().split()))

dp = [0 for i in range(n)]
dp[0] = l[0]

for i in range(1,n):
    dp[i] = max(dp[i-1]+l[i],l[i])
print(max(dp))

반응형