https://www.acmicpc.net/problem/1149
1149번: RGB거리
첫째 줄에 집의 수 N(2 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 각 집을 빨강, 초록, 파랑으로 칠하는 비용이 1번 집부터 한 줄에 하나씩 주어진다. 집을 칠하는 비용은 1,000보다 작거나
www.acmicpc.net
📌 작성한 코드
// 1149
const fs = require("fs");
const filePath = process.platform === "linux" ? "/dev/stdin" : "Beakjoon/Silver/test.txt";
let input = fs.readFileSync(filePath).toString().trim().split("\n");
const N = Number(input.shift());
const list = input.map((str) => str.split(" ").map(Number));
const dp = Array.from({ length: N }, () => new Array(3));
dp[0][0] = list[0][0];
dp[0][1] = list[0][1];
dp[0][2] = list[0][2];
for (let i = 1; i < N; i++) {
dp[i][0] = Math.min(dp[i - 1][1], dp[i - 1][2]) + list[i][0];
dp[i][1] = Math.min(dp[i - 1][0], dp[i - 1][2]) + list[i][1];
dp[i][2] = Math.min(dp[i - 1][0], dp[i - 1][1]) + list[i][2];
}
console.log(Math.min(...dp[N - 1]));
✅ 성공

'알고리즘 > 백준' 카테고리의 다른 글
| [JavaScript/DP] 백준 실버 3 : 11726 - 2xn 타일링 (0) | 2024.02.16 |
|---|---|
| [JavaScript/DP] 백준 실버 3 : 11659 - 구간 합 구하기 (0) | 2024.02.16 |
| [JavaScript] 백준 골드 3 : 18808 - 스티커 붙이기 (0) | 2024.02.16 |
| [JavaScript] 백준 골드 4 : 15683 - 감시 (1) | 2024.02.16 |
| [JavaScript] 백준 골드 5 : 21610 - 마법사 상어와 비바라기 (0) | 2024.02.13 |