
n = int(input())
dp = [0,1]
for i in range(len(dp), n+1):
dp.append(dp[i-2]+dp[i-1])
print(dp[n])
피보나치수열은 0과 1로 시작할 때, 이후의 숫자는 이전의 두 숫자를 더한 값으로 이루어지는 수열을 말한다.
n이 4라면
for 문의 범위는 (2, 5)
첫 번째 for
dp.append(dp[2-2]+dp[2-1]) = dp.append(0+1)
=> dp = [0,1,1]
두 번째 for
dp.append(dp[3-2]+dp[3-1]) = dp.append(1+1)
=> dp = [0,1,1,2]
세 번째 for
dp.append(dp[4-2]+dp[4-1]) = dp.append(1+2)
=> dp = [0,1,1,2,3]
for 문 끝
print(dp[4]) => 3, 즉 네 번째 피보나치 수는 3이 된다.
| [파이썬/python] 프로그래머스 : 없는 숫자 더하기 (Lv.1) (0) | 2023.03.15 |
|---|---|
| [파이썬/python] 프로그래머스 : 행렬의 덧셈 (Lv.1) (feat. zip, 컴프리헨션) (0) | 2023.03.05 |
| [파이썬/python] 프로그래머스 : 최솟값 만들기 (Lv.2) (0) | 2023.01.19 |
| [파이썬/python] 프로그래머스 : 올바른 괄호 (Lv.2) (feat. 스택) (0) | 2023.01.19 |
| [파이썬/python] 프로그래머스 : JadenCase 만들기 (Lv.2) (1) | 2023.01.19 |