def fib_optimized(n):
current = 1 # current는 1로 초기화, n = 1이면 반복 필요 없음
previous = 0
# 반복문 구현
for i in range(1, n):
current, previous = current + previous, current
# n번재 피보나치 수를 리턴
return current
# 테스트 코드
print(fib_optimized(100)) # 실행결과: 354224848179261915075
반응형
'Programming Language > Python3.6' 카테고리의 다른 글
[python 파이썬] 문자열을 포매팅하는 다양한 방식 (1) | 2024.04.20 |
---|---|
[python 파이썬] 백준 <1. 입출력과 사칙연산> 1~5번 2557번, 1000번, 1001번, 10998번, 1008번 코드 (0) | 2024.04.14 |
[알고리즘] [Divide and Conquer 분할 정복] 1부터 N까지 더하는 문제를 분할 정복으로 구현하기 (0) | 2024.01.26 |
[Python 파이썬] 두 리스트 원소들 중에 두 원소를 곱한 값이 최대가 되는 경우 구하기 (1) | 2024.01.26 |
모두의 알고리즘 with 파이썬 (컴퓨팅 사고를 위한 기초 알고리즘) - 문제 18 (0) | 2022.08.05 |