티스토리 뷰

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

 

11727번: 2×n 타일링 2

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

www.acmicpc.net

 

import java.util.Scanner;

public class Main {

	static int N;
	static int dp[];
	
	public static void main(String[] args) {
		solve();
	}
	
	
	public static void solve() {
		input();
		dp();
	}
	
	public static void input() {
		Scanner sc = new Scanner(System.in);
		N = sc.nextInt();
		dp = new int [N + 1];
		sc.close();
	}
	
	
	public static void dp() {
		if(N == 1) {
			System.out.println(1);
			return;
		}
		if(N == 2) {
			System.out.println(3);
			return;
		}
		
		dp[1] = 1;
		dp[2] = 3;
		
		for(int i = 3; i <= N; i++) {
			dp[i] = dp[i - 1] + dp[i - 2] * 2 % 10007;
		}
		
		System.out.println(dp[N]);
	}
	
}
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함