[프로그래머스] 2 x n 타일링 - JS

잡초·2024년 6월 27일
0
post-thumbnail

문제

풀이

function solution(n) {
    // dp[0]은 길이가 0인 바닥을 채우는 방법의 수 (0가지)
    // dp[1]은 길이가 1인 바닥을 채우는 방법의 수 (1가지)
    // dp[2]는 길이가 2인 바닥을 채우는 방법의 수 (2가지)
    let dp = [0, 1, 2];

    // 길이가 3부터 n까지의 바닥을 채우는 방법의 수를 계산하기 위한 반복문
    for (let i = 3; i <= n; i++) {
        // dp[i]는 dp[i-1] (타일을 세로로 배치하는 경우)와
        // dp[i-2] (타일을 가로로 배치하는 경우)의 합
        dp[i] = (dp[i - 1] + dp[i - 2]) % 1000000007;
    }

    // 길이가 n인 바닥을 채우는 방법의 수 반환
    return dp[n];
}
profile
개발자가 되고싶은 잡초

0개의 댓글