STUDY/Python 알고리즘
[백준] 11726번 2xn 타일링
Ojungii
2024. 5. 15. 22:48
하루를 마무리하며 하나 풀어봅니다.
접근법
- DP
- 점화식 : dp[i] = dp[i-2] + dp[i-1]
실패 코드
- 입력값의 범위를 모두 충족하지 못했습니다.
- n = 1일때 dp[2]에서 index out of range 에러 발생
n = int(input())
dp = [0 for _ in range(n+1)]
dp[1], dp[2] = 1,2
for i in range(3,n+1):
dp[i] = dp[i-1] + dp[i-2]
print(dp[n]%10007)
정답 코드
n = int(input())
dp = [0 for _ in range(n+1)]
if n < 3 :
print(n)
else:
dp[1], dp[2] = 1,2
for i in range(3,n+1):
dp[i] = dp[i-1] + dp[i-2]
print(dp[n]%10007)