[백준] 10870: 피보나치 수 5 (Python)

2868 단어 algorithmalgorithm

문제📖

풀이🙏

  • dynamic programming 알고리즘을 사용하여 bottom-up 방식으로 진행한다.
  • 입력 값이 1보다 작거나 같으면 입력 값을 그대로 출력한다.
  • 1보다 클 경우 낮은 수부터 dp[i] = dp[i-1] + dp[i-2]를 통하여 순차적으로 계산한다.

코드💻

n = int(input())
dp = [0] * (n+2)
dp[0], dp[1] = 0, 1

if n <= 1 :
    print(n)
else :
    for i in range(2, n+1):
        dp[i] = dp[i-1] + dp[i-2]

    print(dp[n])

좋은 웹페이지 즐겨찾기