본문 바로가기
코딩테스트/백준

JAVA 백준 11726번 2×n 타일링

by 광고(주) 2022. 8. 19.
반응형
 

문제

2×n 크기의 직사각형을 1×2, 2×1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오.

아래 그림은 2×5 크기의 직사각형을 채운 한 가지 방법의 예이다.

입력

첫째 줄에 n이 주어진다. (1 ≤ n ≤ 1,000)

출력

첫째 줄에 2×n 크기의 직사각형을 채우는 방법의 수를 10,007로 나눈 나머지를 출력한다.

예제 입력 1 

2

예제 출력 1 

2

예제 입력 2 

9

예제 출력 2 

55

알고리즘 분류

다이나믹 프로그래밍(dp)

소스코드

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int N = Integer.parseInt(br.readLine());

        int[] dp = new int[N+3];
        dp[1] = 1;
        dp[2] = 2;
        dp[3] = 3;
        for (int i = 4; i <=N ; i++) {
            dp[i] = (dp[i-1]+ dp[i-2])%10007;
        }

        System.out.println(dp[N]);
    }
}

 

반응형

'코딩테스트 > 백준' 카테고리의 다른 글

JAVA 백준 1904번 01타일  (0) 2022.08.19
JAVA 백준 9461번 파도반 수열  (0) 2022.08.19
JAVA 백준 13458번 시험 감독  (0) 2022.08.18
JAVA 백준 1439번 뒤집기  (0) 2022.08.18
JAVA 백준 1541번 잃어버린 괄호  (0) 2022.08.18

댓글