[BOJ] 1932 정수 삼각형_DP
Date:
정수 삼각형
풀이
- 방식 : DP
📰code
n = int(input())
dp = [[0] for i in range(n+1)]
for i in range(n):
dp[i].append(0)
temp = list(map(int,input().split()))
for j in range(len(temp)):
dp[i+1].append(max(dp[i][j]+temp[j],dp[i][j+1]+temp[j]))
print(max(dp[n]))
다른 풀이
- zip 함수를 사용하여 inline for문을 사용하여 속도가 더 빠름
📰code
import sys
n = int(input())
triangle =[]
for _ in range(n):
triangle.append(list(map(int, sys.stdin.readline().rstrip().split())))
accum = []
for i in range(n):
accum = [max(a+c, b+c) for a,b,c in zip([0]+accum, accum+[0], triangle[i])]
print(max(accum))
💡 수정 필요한 내용은 댓글이나 메일로 알려주시면 감사하겠습니다!💡
댓글