관리 메뉴

막내의 막무가내 프로그래밍 & 일상

[알고리즘] 백준 11726 2xn 타일링 -dp- 자바 본문

알고리즘/DP

[알고리즘] 백준 11726 2xn 타일링 -dp- 자바

막무가내막내 2020. 11. 29. 00:23
728x90

www.acmicpc.net/problem/11726

 

11726번: 2×n 타일링

2×n 크기의 직사각형을 1×2, 2×1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×5 크기의 직사각형을 채운 한 가지 방법의 예이다.

www.acmicpc.net

 

 

 

 

백준 11726 2xn 타일링 문제입니다. dp 문제인데 그려보니까 간단한 점화식이였습니다. ㅎㅎ

dp[n] = dp[n-1] + dp[n-2]

 

그려보면 바로 풀리는 문제였습니다.

n=1 일 때 처리만 조심..! 여기서 인덱스아웃에러 떴었습니다.

 

풀이는 다음과 같습니다

[Java]

import java.util.Scanner;

class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[] dp = new int[n+2];
        dp[1] = 1;
        dp[2] = 2;
        for (int i = 3; i <= n; i++) {
            dp[i] = (dp[i-1] + dp[i-2])%10007;
        }
        System.out.println(dp[n]%10007);
    }
}

 

 

 

댓글과 공감은 큰 힘이 됩니다. 감사합니다. !!

728x90
Comments