본문 바로가기

Algorithm/Implementation

(Python) - 백준(BOJ) 4150 : 피보나치 수

반응형

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

 

4150번: 피보나치 수

피보나치 수열은 다음과 같이 그 전 두 항의 합으로 계산되는 수열이다. 첫 두 항은 1로 정의된다. f(1) = 1, f(2) = 1, f(n > 2) = f(n − 1) + f(n − 2) 정수를 입력받아, 그에 해당하는 피보나치 수를 출력

www.acmicpc.net

피보나치 수열을 구하는 것을 구현하는 문제였습니다.

📕 풀이방법

📔 입력 및 초기화

1. 수열번호 n을 선언 후 입력받습니다.

2. 일차원 배열 f를 선언해줍니다. f[1], f[2]는 모두 1이므로 그 값을 저장해줍니다.

📔 풀이과정

3 ~ n까지 for loop를 수행합니다. 

1. 지역변수 num을 선언해 다음 수열을 구합니다.

2. num값을 f에 append해줍니다.

📔 정답출력

f[n]을 출력합니다.


📕 Code

import sys
input = sys.stdin.readline
n = int(input())
f = [0, 1, 1]
for i in range(3,n+1):
    num = f[i-1] + f[i-2]
    f.append(num)
print(f[n])