1. Question
2×n 크기의 직사각형을 1×2, 2×1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오.
아래 그림은 2×5 크기의 직사각형을 채운 한 가지 방법의 예이다.
1.1 Input
첫째 줄에 n이 주어진다. (1 ≤ n ≤ 1,000)
1.2 Output
첫째 줄에 2×n 크기의 직사각형을 채우는 방법의 수를 10,007로 나눈 나머지를 출력한다.
1.3 Example
2. Approach
가장 기본적인 DP, 점화식은 피보나치와 같다.
3. Submission
4. Code
import sys
rl = sys.stdin.readline
N = int(rl())
pre_val = 0
ans = 1
for _ in range(1, N+1):
ans, pre_val = ans + pre_val, ans
print(ans % 10007)