백준

11727 - 2 x n 타일링2

whiporithm 2023. 6. 4. 16:51

 


 

문제

https://www.acmicpc.net/problem/11727

 

11727번: 2×n 타일링 2

2×n 직사각형을 1×2, 2×1과 2×2 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×17 직사각형을 채운 한가지 예이다.

www.acmicpc.net

 

풀이

 

2 x n 타일링 문제와 거의 유사하다. (풀이 링크 : https://whiporithm.tistory.com/6 )

 

차이점이라고는 2 * 2 타일이 하나 더 들어온 것.

따라서  = 타일이 ㅁ 타일이 될 수 있다. 그렇기에 경우의 수를 2배로 설정해주면 답이 나온다.

 

코드

 

n = int(input())

d = [0] * 1001

d[1] = 1
d[2] = 3

for i in range(3, 1001):
    d[i] = (d[i-1] + d[i-2]*2) % 10007
print(d[n])

'백준' 카테고리의 다른 글

11055 - 가장 큰 증가하는 부분 수열  (0) 2023.06.05
11053 - 가장 긴 증가하는 부분 수열  (0) 2023.06.04
11726 - 2 x n 타일링  (0) 2023.06.04
1463 - 1로 만들기  (0) 2023.06.04
2839 - 설탕배달  (0) 2023.06.04