반응형
def solution(triangle):
triangle = [[0] + line + [0] for line in triangle]
#아래 계산에서 범위 벗어나므로 예외처리
for i in range(1, len(triangle)): #제일 꼭대기는 계산할 필요 없으므로 1부터 시작
for j in range(1, i+2):
triangle[i][j] += max(triangle[i-1][j-1], triangle[i-1][j])
return max(triangle[-1]) #마지막줄중의 max
동적계획법 풀이 문제는 처음 생각해내려면 어려운데 알아내면 알고리즘 중에 제일 재밌는 것 같다.
반응형
'알고리즘 > 프로그래머스 level 3' 카테고리의 다른 글
[파이썬🐍] 프로그래머스 : 이중우선순위큐 (0) | 2021.08.30 |
---|---|
[파이썬🐍] 프로그래머스 : 단어 변환 (0) | 2021.07.20 |
[파이썬🐍] 프로그래머스 : 등굣길 (0) | 2021.07.18 |
[파이썬🐍] 프로그래머스 : 네트워크 (0) | 2021.07.17 |
[파이썬🐍] 프로그래머스 : 가장 먼 노드 (0) | 2021.06.30 |
댓글