풀이과정
정답코드
const filePath = process.platform === 'linux' ? 'dev/stdin' : './input.txt';
const input = require('fs').readFileSync(filePath).toString();
const N = Number(input);
const dp = [...Array(N + 1)].map(v => 5000);
dp[3] = 1;
dp[5] = 1;
for (let i = 6; i <= N; i++) {
if (dp[i - 3] !== 5000 || dp[i - 5] !== 5000) {
dp[i] = 1 + Math.min(dp[i - 3], dp[i - 5]);
}
}
const answer = dp[N] === 5000 ? -1 : dp[N];
console.log(answer);
'알고리즘 문제풀이' 카테고리의 다른 글
백준 - 1912 연속합(Javascript) (1) | 2023.11.21 |
---|---|
백준 silver 3 - 1463 1로 만들기(Javascript) (0) | 2023.11.20 |
프로그래머스 level 2 - 숫자 변환하기(Javascript) (0) | 2023.11.15 |
프로그래머스 level 2 - 뒤에 있는 큰 수 찾기(Javascript) (0) | 2023.11.15 |
프로그래머스 level 2 - 택배상자(Javascript) (1) | 2023.11.14 |