알고리즘 정복하기!/백준 문제풀이

백준 2748번 Python / Dynamic Programming

by seokii 2022. 2. 14.
728x90
반응형

문제 링크

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

 

2748번: 피보나치 수 2

피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가

www.acmicpc.net

 

풀이

n = int(input())
fibo = [0, 1]
answer=0

for _ in range(n-1):
    answer = fibo[0] + fibo[1]
    fibo[0] = fibo[1]
    fibo[1] = answer

if n==1: print(1)
else: print(answer)

처음 fibo라는 리스트에 0, 1을 선언하고

피보나치 방식으로 더한 다음에 인덱스의 값들을 바꿔주었습니다.

범위때문에 n이 1일 때만 1을 출력하는 조건만 따로 넣어서 해결했습니다.

 

 

728x90
반응형

'알고리즘 정복하기! > 백준 문제풀이' 카테고리의 다른 글

백준 9237번 Python / Greedy  (0) 2022.02.16
백준 1676번 Python / Math  (0) 2022.02.16
백준 5545번 Python / Greedy  (0) 2022.02.13
백준 1010번 Python / Math  (0) 2022.02.12
백준 11653번 Python / Math  (0) 2022.02.12

댓글