BOJ - 1149

주의·2024년 1월 29일
0

boj

목록 보기
137/214

백준 문제 링크
RGB거리

업로드중..

❓접근법

  1. 0번 열은 바로 그 위 행의 1번, 2번 열의 값 중 작은 값을 더한다.
    1번 열은 바로 그 위 행의 0번, 2번 열의 값 중 작은 값을 더한다.
    2번 열은 바로 그 위 행의 1번, 0번 열의 값 중 작은 값을 더한다.
  2. 마지막 행에서 가장 작은 값을 반환하면 끝!

👌🏻코드

N = int(input())

RGB = []
for _ in range(N):
    RGB.append(list(map(int, input().split())))
    
DP = [[0] * 3 for _ in range(N)]

for i in range(1, N):
    RGB[i][0] = RGB[i][0] + min(RGB[i-1][1], RGB[i-1][2])
    RGB[i][1] = RGB[i][1] + min(RGB[i-1][0], RGB[i-1][2])    
    RGB[i][2] = RGB[i][2] + min(RGB[i-1][1], RGB[i-1][0])    
    
print(min(RGB[N-1]))

0개의 댓글