반응형
-풀이
n = int(input())
dp = [0, 1, 3]
for i in range(3, 1001):
dp.append(dp[i-2]*2+dp[i-1])
print(dp[n]%10007)
-풀이 설명(느낀점)
[30분 no sol] 11726문제를 풀고 자신감이 생겨서 규칙을 찾으려 했는데, 메모장까지 썼지만 점화식이 전혀 떠오르지 않았다.
0 => 1 => 3 => 5=> 11 => 21 이런식으로 늘어나는데 규칙을 모르겠어서 결국 구글링을 해서 풀었다. 규칙은 n - 1 + (n - 2) * 2가 성립한다. 어떻게 해야 식을 잘 세울 수 있을까?? 반복 숙달? 여러 DP문제 풀어보기??
'알고리즘' 카테고리의 다른 글
[DP] 백준 10844파이썬 (쉬운 계단 수) 실버1 (0) | 2021.11.12 |
---|---|
[DP] 백준 9095 파이썬 (1, 2, 3 더하기) 실버3 (0) | 2021.11.11 |
[DP] 백준 11726 파이썬 (2 x n 타일링) 실버3 (0) | 2021.11.11 |
[수학] 백준 6588파이썬 (골드바흐의 추측) 실버1 (0) | 2021.11.10 |
[수학] 백준 2004 파이썬 (조합 0의 개수) 실버2 (0) | 2021.11.10 |