문제 : https://www.acmicpc.net/problem/1149


import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int n = scan.nextInt();
int[][] street = new int[n][3];
int d[][] = new int[n][3];
for (int i = 0; i < n; i++) {
for (int j = 0; j < 3; j++) {
street[i][j] = scan.nextInt();
}
}
// 입력부
for (int j = 0; j < n; j++) {
for (int i = 0; i < 3; i++) {
if (j == 0) {
d[j][i] = street[j][i];
// System.out.print(d[j][i] + " ");
} else {
d[j][i] = Math.min(d[j - 1][(i + 1) % 3], d[j - 1][(i + 2) % 3]) + street[j][i];
// System.out.print(d[j][i] + " ");
}
}
// System.out.println();
}
// for (int a : d[n - 1]) {
// System.out.println(a);
// }
System.out.println(Math.min(d[n-1][0],Math.min(d[n-1][1], d[n-1][2])));
scan.close();
}
}

+ Recent posts

"여기"를 클릭하면 광고 제거.