For Programmer
백준 1149번 파이썬 문제풀이(DP - RGB거리) 본문
728x90
import sys
input = sys.stdin.readline
N = int(input())
cost = [[0, 0, 0]]
for _ in range(N):
cost.append(list(map(int, input().split())))
dp = [i for i in cost]
for i in range(2, N + 1):
dp[i][0] = min(dp[i - 1][1], dp[i - 1][2]) + dp[i][0]
dp[i][1] = min(dp[i - 1][2], dp[i - 1][0]) + dp[i][1]
dp[i][2] = min(dp[i - 1][0], dp[i - 1][1]) + dp[i][2]
print(min(dp[N]))
-> 간단한 문제이다. dp를 우선 입력받은 cost와 똑같이 만들어준다. 그 이후 문제의 조건에 맞게 2부터 입력받은 N까지 i로 돌며 i일때의 R,G,B를 각각 최소 비용으로 설정해주면서 DP를 돈다.
728x90
'코팅테스트 > 백준 문제 모음' 카테고리의 다른 글
백준 11057번 파이썬 문제풀이(DP - 오름막 수) (0) | 2021.11.07 |
---|---|
백준 1309번 파이썬 문제풀이(DP - 동물원) (0) | 2021.11.06 |
백준 2225번 파이썬 문제풀이(DP - 합분해) (0) | 2021.11.05 |
백준 1699번 파이썬 문제풀이(DP - 제곱수의 합) (0) | 2021.11.04 |
백준 1912번 파이썬 문제풀이(DP - 연속 합) (0) | 2021.11.04 |
Comments