Computer Science/알고리즘
[백준 Java] BOJ 11726 2xn 타일링 Java 문제 풀이
토마토.
2023. 3. 28. 21:36
11726번: 2×n 타일링
2×n 크기의 직사각형을 1×2, 2×1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×5 크기의 직사각형을 채운 한 가지 방법의 예이다.
www.acmicpc.net
import java.io.*;
import java.util.*;
public class Main {
static int[] dp;
public static int answer(int n){
dp = new int[n];
for (int i=0;i<n;i++){
if (i==0){
dp[i] = 1;
} else if (i==1){
dp[i] = 2;
} else {
dp[i] = (dp[i-1]+dp[i-2]>10007)?(dp[i-1]+dp[i-2]%10007):dp[i-1]+dp[i-2];
}
}
return dp[n-1]%10007;
}
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
System.out.println(answer(n));
}
}