def solution(triangle):
for i in range(1, len(triangle)):
for j in range(len(triangle[i])):
if j == 0:
triangle[i][j] += triangle[i-1][j]
elif j == len(triangle[i]) - 1:
triangle[i][j] += triangle[i-1][j-1]
else:
triangle[i][j] += max(triangle[i-1][j], triangle[i-1][j-1])
return max(max(triangle))
아주 예전에 비슷한 문테를 코테에서 봤을 때 인덱스를 어떻게 처리해야할지, 어떻게 그림처럼 정삼각형을 만들지 고민했는데 그럴 필요가 없다. 그냥 주어진 리스트로 인덱스만 생각하면 된다.