일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 스케줄링
- DirectX 12
- DirectX12
- directx
- 타입 객체
- 쓰레드
- I/O장치
- 다이나믹프로그래밍
- 동적계획법
- 멀티프로세서
- 운영체제
- Direct12
- codility
- 컨디션 변수
- 병행성 관련 오류
- 영속성
- 디자인패턴
- 파일시스템 구현
- 멀티쓰레드
- OS
- 그리디알고리즘
- 백준
- 프로그래머스
- 다이나믹 프로그래밍
- 렌더링 파이프라인
- 자료구조
- 그리디 알고리즘
- 병행성
- 락
- 알고리즘
Archives
- Today
- Total
목록RGB거리 (1)
기록공간

동적계획법을 사용하는 문제였다. 이번 문제는 다른 문제들과 다르게 DP 테이블을 2차원 배열로 만들어줘야 한다. 한 경우(집)에 3가지 값(RGB)을 DP 테이블에 기록해야 하기 때문이다. 예를들어 어떤 집 N을 R로 칠할경우, 전 집 N - 1은 R로 칠할 수 없으므로 G와 B로 칠하는 비용중 가장 작은 비용을 찾아 N의 R로 칠하는 비용을 더해 DP 테이블에 기록하면 된다. N에서 G와 B도 위와 같은 방법으로 해주면 된다. DP(N에서 R) = DP(N - 1에서 G나 B중 가장 작은 값) + H(N에서 R) DP(N에서 G) = DP(N - 1에서 R나 B중 가장 작은 값) + H(N에서 G) DP(N에서 B) = DP(N - 1에서 R나 G중 가장 작은 값) + H(N에서 B) (DP는 DP테이..
Algorithm/문제
2020. 2. 25. 21:22