def solution(triangle):
answer = 0
dp = [[] for _ in range(len(triangle))]
dp[0].append(triangle[0][0])
for i in range(1, len(triangle)):
for index, j in enumerate(triangle[i]):
if index == 0:
dp[i].append(dp[i-1][0] + j)
elif index == len(triangle[i]) - 1:
dp[i].append(dp[i-1][-1] + j)
else:
dp[i].append(max(dp[i-1][index-1] + j, dp[i-1][index] + j))
return max(dp[-1])
'Python > 알고리즘' 카테고리의 다른 글
DP Level 4 도둑질 - python (프로그래머스) (0) | 2023.06.30 |
---|---|
DP Level 3 등굣길 - python (프로그래머스) (0) | 2023.06.30 |
DP Level 3 N으로 표현 - python (프로그래머스) (0) | 2023.06.30 |
깊이/너비 우선 탐색(DFS/BFS) Level 3 단어 변환 - python (프로그래머스) (0) | 2023.06.23 |
깊이/너비 우선 탐색(DFS/BFS) Level 2 타겟 넘버 - python (프로그래머스) (0) | 2023.06.23 |