[파이썬][프로그래머스] 동적계획법(Dynamic Programming) 정수 삼각형
def solution(triangle):
answer = 0
reversed(triangle)
temp = []
for i in range(len(triangle)-1, -1, -1):
# temp 값 더한후
if temp != []:
t = sumT(triangle[i], temp)
else:
t = triangle[i]
# 원소가 2개 이상이라면 temp 값 구하기
if len(t) != 1:
maxT = findMax(t)
# temp가 있으면 에 최대 값 저장
temp = maxT
# 만약 1개면 리턴
if len(t) == 1:
return answer + t[0]
return answer
def sumT(t, temp):
answer = []
for i in range(len(t)):
answer.append(t[i]+temp[i])
return answer
def findMax(t):
answer = []
for i in range(len(t)-1):
answer.append(max(t[i], t[i+1]))
return answer