알고리즘/문제풀이

DP(2×n 타일링/S3) - 11726

문승주 2023. 3. 1. 23:48
반응형

1. 문제

2×n 크기의 직사각형을 1×2, 2×1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오.

아래 그림은 2×5 크기의 직사각형을 채운 한 가지 방법의 예이다.

 

2. 입력

2×n 크기의 직사각형을 1×2, 2×1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오.

아래 그림은 2×5 크기의 직사각형을 채운 한 가지 방법의 예이다.

2

 

9

 

3. 출력

첫째 줄에 2×n 크기의 직사각형을 채우는 방법의 수를 10,007로 나눈 나머지를 출력한다.

 

9

 

55

 

4. 코드

import sys

n = int(sys.stdin.readline())

rec =  [0 for _ in range(n+1)]
rec[0] = 1
rec[1] = 1

for i in range(2,n+1):
  rec[i] = (rec[i-1] + rec[i-2]) 

print(rec[n]% 10007)
반응형