728x90
반응형
목차
https://www.acmicpc.net/problem/1309
문제
문제 구현 방향
ox -> 0
xo -> 1
xx -> 2
라고 하면 0일때는 다음에 1 2, 1일때는 다음에 0, 2 2일때는 다음에 0, 1, 2 가 올 수 있다.
따라서 다음과 같이 점화식이 세워진다.
let a = (dp[1] + dp[2]) % md;
let b = (dp[0] + dp[2]) % md;
let c = (dp[1] + dp[2] + dp[0]) % md;
문제 구현 시 주의점
이 문제는 그 전 것만 누적하면 되기때문에 배열에 모든 과정의 값들을 저장할 필요가 없다.
코드 구현
const input = require("fs")
.readFileSync("./dev/stdin", "utf-8")
.trim()
.split("\n");
let N = +input[0];
let md = 9901;
let dp = [1, 1, 1];
for (let i = 2; i <= N; i++) {
let a = (dp[1] + dp[2]) % md;
let b = (dp[0] + dp[2]) % md;
let c = (dp[1] + dp[2] + dp[0]) % md;
dp = [a, b, c];
}
let ans = dp.reduce((cur, el) => cur + el, 0);
console.log(ans%9901);
반응형
'백준 문제풀이 > Nodejs' 카테고리의 다른 글
[백준][그리디] 1439 뒤집기 NodeJs 구현 (0) | 2024.11.18 |
---|---|
[백준][다익스트라] 4485 녹색 옷 입은 애가 젤다지? NodeJs 구현 (1) | 2024.11.17 |
[백준][이분탐색] 2776 암기왕 NodeJs 구현 (0) | 2024.11.14 |
[백준][너비우선탐색] 1261 알고스팟 NodeJs 구현 (1) | 2024.11.13 |
[백준][이분탐색] 16434 드래곤 앤 던전 NodeJs 구현 (1) | 2024.11.12 |