문제
https://www.acmicpc.net/problem/11726
Algorithm
2 * n 크기의 직사각형을 채우는 방법은 마지막에 2 * 1 타일을 새로로 두는지 가로로 두는지에 따라 달라집니다.
이를 이용해 피보나치 수열과 유사한 점화식을 사용합니다.
Code
n = int(input())
dp = [0] * (n + 2)
dp[1] = 1
if n >= 2:
dp[2] = 2
for i in range(3, n + 1):
dp[i] = (dp[i - 1] + dp[i - 2]) % 10007
print(dp[n])
'Koala - 19기 > 코딩테스트 심화 스터디' 카테고리의 다른 글
[백준/Python] #2823 유턴싫어 (0) | 2025.08.10 |
---|---|
[백준/Python] 18126 : 너구리 구구 (1) | 2025.08.09 |
[백준/Python] #25706 자전거 묘기 (0) | 2025.08.03 |
[백준/python] 9095: 1,2,3더하기 (0) | 2025.08.02 |
[python] 백준 11053 (0) | 2025.08.01 |