반응형
https://www.acmicpc.net/problem/11726
문제 접근법
- 점화식을 세워 접근 하면 된다.
- 2xn의 직사각형이 있을 때 마지막에 1x2 타일이 없다고 가정하면 그 직사각형은 가로길이 n-1까지의 경우의 수 라고 볼 수 있다.
- 같은 경우로 2x1 짜리 타일이 없으면 가로길이 n-2까지의 경우의 수 라고 볼 수 있다.
- DP[N](2xn 까지의 경우의 수) = DP[N-1] + DP[N-2]가 성립한다.
아래는 코드입니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
#include <cstdio>
int check[1001];
int main()
{
check[1] = 1;
check[2] = 2;
int a;
scanf("%d", &a);
for (int i = 3; i <= a; i++)
{
check[i] = (check[i - 1] + check[i - 2]) % 10007;
}
printf("%d\n", check[a]);
return 0;
}
Colored by Color Scripter
|
반응형
'백준 문제풀이 > SILVER' 카테고리의 다른 글
[백준 / BOJ / SILVER 2] 17087 번 : 숨바꼭질 6 (0) | 2021.03.23 |
---|---|
[백준 / BOJ / SILVER 3] 11727 번 : 2xn 타일링 2 (0) | 2020.04.07 |
[백준 / BOJ / SILVER 3] 1463 번 : 1로 만들기 (0) | 2020.04.05 |
[백준 / BOJ / SILVER 1] 15989 번 : 1, 2, 3 더하기 4 (0) | 2020.04.04 |
[백준 / BOJ / SILVER 5] 11723 번 : 집합 (0) | 2020.03.18 |