문제📖
풀이🙏
- 타일이 i-1까지 채워져 있다고 할 때 i번째 타일을 만드는 방법은 1x2 타일로 채우는 방법 1가지이다.
- 타일이 i-2까지 채워져 있다고 할 때 i번째 타일을 만드는 방법은 2x1 타일을 2개 사용하는 방법 1가지이다.
- 이러한 방식으로 bottom-up을 만들면
d[i] = d[i-1] + d[i-2]
코드💻
n = int(input())
d = [0] * 1001
d[1] = 1
d[2] = 2
for i in range(3, n+1):
d[i] = (d[i-1] + d[i-2]) % 10007
print(d[n])