본문 바로가기

BOJ/다이나믹 프로그래밍

BOJ : 1904 01수열 (JS)

728x90

소스코드

let fs = require('fs');
const filePath = process.platform === "linux" ? `/dev/stdin` : `예제.txt`; 
let input = fs.readFileSync(filePath).toString().trim().split(' ');
const c = console.log

n = Number(input[0])

let dp = []

dp[1] = 1 
dp[2] = 2
dp[3] = 3

for(let i = 4 ; i < 1000001 ; i++){
    dp[i] = (dp[i-2] ) + (dp[i-1] )
    if (dp[i] >= 15746) {
        dp[i] = Number(dp[i]%15746)
    }
}

c(dp[n])

 

풀이

점화식을 찾아서 구해보니 전식과 전전식을 더하면 되면 구해지는 규칙이였다.

공책에 적어서 하면 쉽게 풀 수 있었다.

 

문제

https://www.acmicpc.net/problem/1904

 

1904번: 01타일

지원이에게 2진 수열을 가르쳐 주기 위해, 지원이 아버지는 그에게 타일들을 선물해주셨다. 그리고 이 각각의 타일들은 0 또는 1이 쓰여 있는 낱장의 타일들이다. 어느 날 짓궂은 동주가 지원이

www.acmicpc.net

 

728x90