티스토리 뷰

PS/BOJ Python

1932번 - 정수 삼각형

zpqmdh 2023. 6. 10. 13:25

https://www.acmicpc.net/problem/1932

 

1932번: 정수 삼각형

첫째 줄에 삼각형의 크기 n(1 ≤ n ≤ 500)이 주어지고, 둘째 줄부터 n+1번째 줄까지 정수 삼각형이 주어진다.

www.acmicpc.net

위에서 아래로 내려간다고 생각하니까 배열을 더하는 공식을 짜기가 어려웠다. 하지만 밑에서 아래로 올라간다고 생각하고 위의 두 값 중에 더 큰 값을 더한다고 생각하니 쉽게 구현할 수 있었다. 

# 정수 삼각형
import sys
input = sys.stdin.readline

N = int(input())
triangle = []
for _ in range(N):
    triangle.append(list(map(int, input().split())))

for i in range(1, N):
    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])
            
print(max(triangle[-1]))

'PS > BOJ Python' 카테고리의 다른 글

11723번 - 집합  (0) 2023.06.25
9935번 - 문자열 폭발  (0) 2023.06.22
11660번 - 구간 합 구하기 5  (0) 2023.06.05
11722번 - 가장 긴 감소하는 부분 수열  (0) 2023.06.02
1057번 - 토너먼트  (0) 2023.05.25
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
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
글 보관함