반응형
SMALL
안녕하세요. 꼬동입니다.
최근 이미지 분석 스터디를 시작했는데요.
거기서 숙제가 생겼는데, RGB Leveling 공부를 해오는 숙제가 있습니다.
하지만, 전 알고리즘 장인(예비)
RGB Leveling을 공부하기 전, RGB 알고리즘 문제를 풉시다.
그래서 오늘 RGB 거리 문제를 들고 왔습니다.
https://www.acmicpc.net/problem/17404
1은 어디갔냐고요 ?
https://www.acmicpc.net/problem/1149
넘 쉬워서 줄이겠습니답.
아마 여러분들도 보고 싶지 않을거에요.
음, RGB 거리 2는 처음과 끝도 달라야합니다.
그래서 처음부터 색을 정하고, 마지막에 해당 색을 제외하고 DP를 구하면 됩니다.
이것도 너무 설명이 성의없넹
N = int(input())
arr = [list(map(int, input().split())) for n in range(N)]
result = 1000 * 1000 + 3
def check(N, color):
global result
for _ in range(1, N):
r, g, b = arr[_]
br, bg, bb = dp
dp[0] = r + min(bg, bb)
dp[1] = g + min(br, bb)
dp[2] = b + min(br, bg)
if color == 0:
result = min(result, min(dp[1], dp[2]))
if color == 1:
result = min(result, min(dp[0], dp[2]))
if color == 2:
result = min(result, min(dp[0], dp[1]))
# R, G, B
dp = [0, 0, 0]
# R을 골랐다 치고
v = arr[0][0]
dp = [1001, v, v]
check(N, 0)
# G를 골랐다 치고
v = arr[0][1]
dp = [v, 1001, v]
check(N, 1)
# B를 골랐다 치고
v = arr[0][2]
dp = [v, v, 1001]
check(N, 2)
print(result)
어...
음...
자야지
이상 17404 - RGB 거리 2 였습니다. ^_^
반응형
LIST
'알고리즘 문제 풀이 > Baekjoon' 카테고리의 다른 글
시간 복잡도 느린 정렬 모음 - python (0) | 2023.06.16 |
---|---|
2243 - 사탕상자 (0) | 2021.10.31 |
5676 - 음주 코딩 (0) | 2021.10.16 |
3653 - 영화 수집 (0) | 2021.10.10 |
1107 - 리모컨 (0) | 2021.10.09 |