백준 1932번(파이썬):정수 삼각형
백준 1932번 문제 정리글 입니다.
문제 출처-https://www.acmicpc.net/problem/1932
문제 내용
나의 풀이
n=int(input())
tri=[list(map(int,input().split())) for _ in range(n)]
for i in range(1,n):
for j in range(i+1):
if j==0:
tri[i][j]+=tri[i-1][j]
elif j==i:
tri[i][j]+=tri[i-1][j-1]
else:
tri[i][j]+=max(tri[i-1][j-1],tri[i-1][j])
print(max(tri[n-1]))
한줄씩 그 전줄에서 나올 수 있는 경우 중 큰 값과 더하면서 그 줄에서의 최대값을 구하는 방식으로 구현했다.
처음에는 dp라는 배열을 만들어서 집어넣으면서 계산하니 80~90%에서 틀렸습니다
가 나왔다. 그래서 그냥 각 줄에서의 최대값을 계산하도록하니 해결되었다.