반응형

-풀이

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문제 풀어보기?? 

+ Recent posts