📙
python-algorithm
  • 🖋️알고리즘 풀이 저장소
  • 이론
    • BFS & DFS 이론
    • 다익스트라 이론
    • 최소신장트리(크루스칼) 이론
    • 백트래킹 이론
  • 유형
    • 정렬
    • 순열과 조합
    • 탐색
    • 이분 탐색
    • SHA-256
    • 투 포인터
    • 피보나치
    • Z 재귀함수
    • 재귀함수
    • 친구 네트워크
    • 찾기
    • 큐
    • 스택 수열
    • 기하학
    • 트리 순회
    • 고급 탐색
    • BFS & DFS 알고리즘
    • 다익스트라 알고리즘
    • 최소신장트리(크루스칼) 알고리즘
    • 동적 프로그래밍
    • 그리디 알고리즘
    • 백트래킹 알고리즘
  • 기타
    • 베스트셀러
    • 성
    • 키 로거
    • 음계
Powered by GitBook
On this page
  • 백준 2747번 : 피보나치 수
  • 1. 첫 풀이
  • 2. 재귀 함수 풀이
  • 3. 최적화 풀이
  1. 유형

피보나치

#수학 #구현

백준 2747번 : 피보나치 수

1. 첫 풀이

count = int(input())-1

a=0
b=1
temp=0

for n in range(count):
  temp=a+b
  a=b
  b=temp

if(temp == 0):
  print(1)
else:
  print(temp)

2. 재귀 함수 풀이

def fibonacci(n):
    if n == 0:
        return 0
    if n == 1:
        return 1
    return fibonacci(n - 1) + fibonacci(n - 2)

print(fibonacci(int(input())))

3. 최적화 풀이

n = int(input())

a, b = 0, 1

while n > 0:
    // 값 대입 두 번만 하면 끝나는 것이 핵심
    a, b = b, a + b
    n -= 1

print(a)
Previous투 포인터NextZ 재귀함수

Last updated 3 years ago