본문 바로가기

알고리즘/프로그래머스

[프로그래머스] 2 X N 타일링 / JAVA

문제링크 : https://programmers.co.kr/learn/courses/30/lessons/12900

 

코딩테스트 연습 - 2 x n 타일링

가로 길이가 2이고 세로의 길이가 1인 직사각형모양의 타일이 있습니다. 이 직사각형 타일을 이용하여 세로의 길이가 2이고 가로의 길이가 n인 바닥을 가득 채우려고 합니다. 타일을 채울 때는

programmers.co.kr

class Solution {
    public static int dp[];
    public int solution(int n) {
        int answer = 0;
        dp = new int[600001];
        dp[1] = 1;
        dp[2] = 2; 
        dp[3] = 3;
        dp[4] = 5;
        for(int i=5;i<=n;i++){
            dp[i] = dp[i-2] + dp[i-1];
            dp[i] %= 1000000007;
        }
        
        return dp[n];
    }
}