문제
2×n 직사각형을 1×2, 2×1과 2×2 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오.
아래 그림은 2×17 직사각형을 채운 한가지 예이다.
풀이 과정
제출 코드
const readline = require("readline").createInterface({
input: process.stdin,
output: process.stdout,
});
const solution = (N) => {
const dp = new Array(N + 1).fill(1);
for (let i = 1; i < N + 1; i++) {
i % 2 === 1 ? dp[i] = (dp[i - 1] * 2 - 1) % 10007 : dp[i] = (dp[i - 1] * 2 + 1) % 10007;
}
console.log(dp[N]);
};
readline
.on("line", function (line) {
solution(+line);
readline.close();
})
.on("close", function () {
process.exit();
});
문제 링크
'Algorithm' 카테고리의 다른 글
[구름LEVEL] 블록 게임 | 자바스크립트 JS | 스택/큐, 구현 | Lv2 (0) | 2024.01.29 |
---|---|
[백준] 계단 오르기 | 자바스크립트 JS | 다이나믹 프로그래밍 DP | S3 (1) | 2024.01.28 |
[백준] 파도반 수열 | 자바스크립트 JS | 다이나믹 프로그래밍 DP | S3 (0) | 2024.01.26 |
[백준] DSLR | 자바스크립트 JS | BFS | G4 (1) | 2024.01.25 |
[백준] 테트로미노 | 자바스크립트 JS | 브루트포스, 구현 | G4 (1) | 2024.01.24 |