백준 SILVER 2(2xn 타일링 2)
-
사용 언어 : javascript
-
해결 날짜 : 2023-02-01
-
해결 방법 :
- dp를 통해 문제 해결
- dp[n] = dp[n-1] + 2 x dp[n-2]의 점화식을 활용
-
회고 :
- 각 dp 계산마다 10007로 나눴을 때 나머지로 연산
-
코드
const fs = require('fs'); const filePath = process.platform === 'linux' ? '/dev/stdin' : '../input.txt'; const input = fs.readFileSync(filePath).toString().trim(); solution(input); function solution(prop) { n = +prop; const dp = Array.from({ length: n + 1 }, () => 0); dp[1] = 1; dp[2] = 3; for (let i = 3; i <= n; i++) { dp[i] = ((dp[i - 1] % 10007) + ((2 * dp[i - 2]) % 10007)) % 10007; } console.log(dp[n]); }
-
출처: 백준