Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

justsicklife

백준 1932번: 정수 삼각형 본문

카테고리 없음

백준 1932번: 정수 삼각형

구슬탈출 2022. 8. 16. 22:12

이 문제는 일단은 https://pacific-ocean.tistory.com/148 

 

[백준] 1932번(python 파이썬)

문제 링크: https://www.acmicpc.net/problem/1932 1932번: 정수 삼각형 문제 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 위 그림은 크기가 5인 정수 삼각형의 한 모습이다. 맨 위층 7부터 시작해서 아래에 있는 수 중 하나를..

pacific-ocean.tistory.com

링크에 있는 코드를 봤다 도저히 구현이 머리속으로 정리가 안되서 아무튼 답을 봤다.

 

코드에 주석을 달아보았다.

n = int(input())
t = []
for i in range(n):
    t.append(list(map(int, input().split())))
k = 2
for i in range(1, n):
    for j in range(k):
    	// 제일 왼쪽에 있는 값이 라면
        if j == 0:
        	// 제일 왼쪽칸 에 위에 있는 값을 더한다.
            t[i][j] = t[i][j] + t[i - 1][j]
        // 제일 오른쪽 칸 에 있는 값이라면
        elif i == j:
        	// 제일 오른쪽 칸 위에 있는 값을 더한다
            t[i][j] = t[i][j] + t[i - 1][j - 1]
        // 오른쪽과 왼쪽 둘다 아니라면
        else:
        	// 현제 위치에서 위에값에 왼쪽 과 오른쪽 둘중 큰값을 더한다.
            t[i][j] = max(t[i - 1][j - 1], t[i - 1][j]) + t[i][j]
    k += 1
print(max(t[n - 1]))