감자튀김 공장🍟

[백준/24416] 알고리즘 수업 - 피보나치 수 1 (with 파이썬) 본문

Algorithm/BOJ

[백준/24416] 알고리즘 수업 - 피보나치 수 1 (with 파이썬)

Potato potage 2023. 2. 6. 22:16
반응형

✔ 문제


풀이

import sys
input = sys.stdin.readline

def fibo1(a):
    global c1
    if a == 1 or a == 2:
        return 1
    else:
        c1 += 1
        return fibo1(a-1) + fibo1(a-2)

def fibo2(a):
    global c2
    dp[1], dp[2] = 1, 1

    for i in range(3, n):
        c2 += 1
        dp[i] += dp[i-1] + dp[i-2]

n = int(input())
dp = [0] * (n + 1)
c1, c2 = 0, 0
fibo1(n)
fibo2(n)
print(c1 + 1, c2 + 1)

후기

문제에 있는 답안 안보고 풀어봤다.

fibo(n-1) + fibo(n-2)인데 헷갈려서 fibo(n) * fibo(n-1) 이러고 있었다.

위키백과에서 피보나치 수열 공부하고 다시 식을 수정해서 풀었다. (이걸 까먹다니)

반응형
Comments