
n = int(input())
house = []
for i in range(n):
house.append(list(map(int,input().split())))
for i in range(1, n):
house[i][0] += min(house[i-1][1], house[i-1][2])
house[i][1] += min(house[i-1][0], house[i-1][2])
house[i][2] += min(house[i-1][0], house[i-1][1])
print(min(house[-1]))
서로 이웃한 집이 같은 색이면 안 되기 땜누에 같은 열에 있는 수는 더해주면 안 된다.
house[i]의 0번째 위치에는 [i-1]의 1번째와 2번째 중 작은 것을 선택하여 더하고,
1번째는 0,2, 2번째에는 0,2번째 중 작은 것을 선택하여 누적하여 더한다.
| [파이썬/python] 프로그래머스 : 추억 점수 (Lv.1) (0) | 2023.07.05 |
|---|---|
| [파이썬/python] 백준 1932번 : 정수 삼각형(🥈1) (0) | 2023.07.02 |
| [파이썬/python] 백준 1912번 : 연속합(🥈2) (0) | 2023.07.02 |
| [파이썬/python] 백준 9461번 : 파도반 수열(🥈3) (0) | 2023.06.30 |
| [파이썬/python] 백준 1904번 : 01타일 (🥈3) (0) | 2023.06.30 |