heheh
히히
heheh
전체 방문자
오늘
어제
  • 히히 (75)
    • AI (14)
      • Model (Study) (3)
      • Model (Paper) (7)
      • Tip! (4)
    • Backend (3)
      • ASP.NET (1)
      • Spring (2)
      • program (0)
      • JAVA (0)
    • Program (11)
      • Docker (3)
      • Github (5)
      • AWS (3)
    • OS (1)
      • Window (1)
      • Linux (0)
    • Python (14)
      • Python Lib (11)
      • Pytorch (1)
      • Tensorflow (1)
      • 크롤링 (1)
    • Spark (3)
      • Scala (2)
      • Pyspark (0)
      • SQL (1)
    • IOS (Swift) (0)
      • 기본 개념 (0)
    • 프로젝트 (3)
      • [AI] GAN (0)
      • [IOS] Swift (3)
      • [AI] 추천시스템 (0)
    • 분석 (1)
    • 알고리즘 풀이 (22)
      • 백준 (22)
    • 기타 (3)
      • 장비세팅 (3)
      • 소개 (0)

인기 글

최근 글

최근 댓글

hELLO · Designed By 정상우.
heheh

히히

알고리즘 풀이/백준

백준 1932번 : 정수 삼각형 (Python)

2021. 2. 4. 18:28

문제 : www.acmicpc.net/problem/1932

 

1932번: 정수 삼각형

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

www.acmicpc.net

 

풀이

바로 너비우선탐색으로 풀다 바꿔 풀었다.

dp에 해당 위치까지의 최대값을 저장한다.

a에 왼쪽 위를 더한값과 오른쪽 위를 더한값을 추가하여 둘중 최대값을 해당 위치 값으로 저장한다.

왼쪽 위와 오른쪽 위를 더할 때 범위가 벗어나지 않도록 조건문을 걸어준다.

 

n = int(input())
A = []
for i in range(n):
    temp = list(map(int, input().split(" ")))
    A.append(temp)

dp = []
for i in range(1,n+1):
    temp = [0 for _ in range(i)]
    dp.append(temp)

dp[0][0] = A[0][0]

for i in range(1,n):
    for j in range(i+1):
        a = []
        if j < i:
            a.append(dp[i-1][j]+A[i][j])
        if j-1>=0:
            a.append(dp[i-1][j-1]+A[i][j])
        dp[i][j] = max(a)

print(max(dp[n-1]))

'알고리즘 풀이 > 백준' 카테고리의 다른 글

백준 1010번 : 다리 놓기 (Python)  (0) 2021.02.06
백준 9461번 : 파도반 수열 (Python)  (0) 2021.02.06
백준 2156번 : 포도주 시식 (Python)  (0) 2021.02.04
백준 11053 : 가장 긴 증가하는 부분 수열 (Python)  (0) 2021.02.04
백준 11726번 : 2xn 타일링 (Python)  (0) 2021.02.04
    heheh
    heheh

    티스토리툴바