반응형
문제 출처
2133번: 타일 채우기
3×N 크기의 벽을 2×1, 1×2 크기의 타일로 채우는 경우의 수를 구해보자.
www.acmicpc.net
문제 설명
3×N 크기의 벽을 2×1, 1×2 크기의 타일로 채우는 경우의 수를 구해보자.
입력
첫째 줄에 N(1 ≤ N ≤ 30)이 주어진다.
출력
첫째 줄에 경우의 수를 출력한다.
예제
풀이
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
|
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
static int[] dp;
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int num = Integer.parseInt(br.readLine());
dp = new int[31];
dp[0] = 1;
dp[1] = 0;
if(num > 1)
dp[2] = 3;
for(int i = 4; i <= num; i+=2) {
dp[i] = 3 * dp[i-2];
for(int j = 0; j < i-2; j+=2) {
dp[i] += dp[j] * 2;
}
}
System.out.println(dp[num]);
}
}
|
cs |
반응형
'백준' 카테고리의 다른 글
[백준 / JAVA] 5622번 다이얼 (0) | 2021.01.07 |
---|---|
[백준 / JAVA] 1924번 2007년 (0) | 2021.01.07 |
[백준 / JAVA] 9012번 괄호 (0) | 2021.01.06 |
[백준 / JAVA] 11650번 좌표 정렬하기 (0) | 2020.12.30 |
[백준 / JAVA] 6588번 골드바흐의 추측 (0) | 2020.12.30 |