li 리스트와 동일한 위치의 dp 리스트 위치에는, 그 위치까지 계산된 값을 넣었다.
num = int(input())
li = []
dp = []
for n in range(num):
li.append(list(map(int, input().split())))
if(n != num-1):
dp.append([0] * len(li))
dp.append(li[-1])
li.reverse()
dp.reverse()
for i in range(num):
for j in range(len(li[i])-1):
dp[i+1][j] = max(dp[i][j], dp[i][j+1]) + li[i+1][j]
print(dp[-1][0])
'알고리즘 > 백준' 카테고리의 다른 글
[BOJ] [Python] 18352번 : 특정 거리의 도시 찾기 (0) | 2021.05.18 |
---|---|
[BOJ] [Python] 11053번 : 가장 긴 증가하는 부분 수열 (0) | 2021.05.18 |
[BOJ] [Python] 2579번 : 계단 오르기 (2) | 2021.05.17 |
[BOJ] [Python] 9625번 : BABBA (0) | 2021.05.17 |
[BOJ] [Python] 3079번 : 입국심사 (0) | 2021.05.11 |