[백준/Python] 2748 - 피보나치 수 2

orangesnail·2025년 3월 8일

백준

목록 보기
57/169

https://www.acmicpc.net/problem/2748


초기 코드

n = int(input())

if n == 1:
    print(0)
elif n == 2:
    print(1)
else:
    fib = [0] * (n + 1)
    fib[1] = 1
    fib[2] = 1

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

    print(fib[n])

c에 익숙해져 있어서 이런 코드를 짜버렸다...
틀린건 아니지만 파이썬에서는 언패킹을 사용해 훨씬 더 간단한 코드를 만들 수 있다.


코드 개선하기

n = int(input())

num1, num2 = 0, 1

for _ in range(n):
    num1, num2 = num2, num1 + num2

print(num1)

코드가 훨씬 간단해졌다!

profile
초보입니다. 피드백 환영합니다 😗

0개의 댓글