Notice
Recent Posts
Recent Comments
Link
뮁이의 개발새발
[JAVA] 백준 1149 RGB거리 (DP) 본문
시작이 빨,초,파일때의 케이스를 전부 나눠서 계산 해 준 뒤, 그 중 최솟값이 무엇인지 고르는것이 핵심
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
//bj1149
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(in.readLine());
int[][] house = new int[N + 1][3];
for (int i = 1; i <= N; i++) {
StringTokenizer st = new StringTokenizer(in.readLine());
for (int j = 0; j < 3; j++) {
house[i][j] = Integer.parseInt(st.nextToken());
}
}
int[][] D = new int[N + 1][3];
for (int i = 1; i <= N; i++) {
D[i][0] = Math.min(D[i - 1][1], D[i - 1][2]) + house[i][0];
D[i][1] = Math.min(D[i - 1][0], D[i - 1][2]) + house[i][1];
D[i][2] = Math.min(D[i - 1][0], D[i - 1][1]) + house[i][2];
}
System.out.println(Math.min(Math.min(D[N][0], D[N][1]), D[N][2]));
}
}
'Algorithm' 카테고리의 다른 글
[JAVA] SWEA 1263 사람 네트워크 2 (Floyd 알고리즘) (0) | 2021.09.16 |
---|---|
[JAVA] 백준 2636,2638 치즈 (BFS, 완전탐색) (0) | 2021.09.15 |
[JAVA] 백준 1463 1로 만들기 (DP) (0) | 2021.09.14 |
[JAVA] 프로그래머스 행렬 테두리 회전하기 (0) | 2021.09.14 |
[JAVA] 백준 1922 네트워크 연결 (MST 알고리즘) (0) | 2021.09.07 |
Comments