https://programmers.co.kr/learn/courses/30/lessons/43105?language=python3
오히려 계산횟수가 기하급수적으로 늘어나버려서
시간초과로 통과를 못해버렸네요..
다시 고쳐봤습니다.
def solution(a):
for i in range(0, len(a)-1):
for j in range(0, len(a)-1-i):
a[len(a)-2-i][j] += max(a[len(a)-1-i][j], a[len(a)-1-i][j+1])
answer = a[0][0]
return answer
밑에서부터 큰 수를 양자택일해서 위에 더해가는 방식으로
삼각형을 밑에서부터 쭉- 훑고, 같은 자리를 다시 계산해야할 필요 없음.
동적계획법이 뭔지는 모르겠는데 위키에서 '계산값을 계속 저장해야 한다'는 걸 힌트삼음.
채점 맞았다고 뜨네여.
댓글 0