[백준] 1912 연속합

cheeeese·2022년 7월 18일
0

코딩테스트 연습

목록 보기
116/151
post-thumbnail

문제

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

내 코드

n=int(input())

mlist=list(map(int, input().split()))

dp=[0]*n
dp[0]=mlist[0]
for i in range(1, n):
    dp[i]=max(mlist[i], dp[i-1]+mlist[i])

print(max(dp))

풀이

  • 크기가 n인 리스트 생성
  • dp[0]에는 mlist[0]저장
  • 인덱스 1부터 mlist[i]와 mlist[i]+dp[i-1] (본인과 직전 인덱스에 저장된 큰 값의 합) 중 큰 것을 dp[i]에 저장

0개의 댓글