728x90
반응형
# 피보나치 수
# F(0) = 0, F(1) = 1일 때, 1 이상의 n에 대하여 F(n) = F(n-1) + F(n-2) 가 적용되는 수
# F(2) = F(0) + F(1) = 0 + 1 = 1
# F(3) = F(1) + F(2) = 1 + 1 = 2
# F(4) = F(2) + F(3) = 1 + 2 = 3
# F(5) = F(3) + F(4) = 2 + 3 = 5
# 2이상 n이 입력될때 1234567 로 나눈 나머지를 리턴
def solution(n):
answer = 0
F=0
x=0
y=1
# 피보나치수는 수를 두개의 변수에 담아서 구해보자
for i in range(2,n+1):
# print(i)
# 3이였을때는 한번 더 사용해줘야한다.
if i==3:
y=1
F=x+y
# print(x,y,F,"FFFFFFFFFFFFFF")
x=y
y=F
if n >=2 :
F=F%1234567
return F
print(solution(3)) # 2
print(solution(5)) # 5
728x90
반응형
'Algorithm > Python' 카테고리의 다른 글
[programmers]python 42842 카펫 (0) | 2024.03.05 |
---|---|
[programmers]python 12973 짝지어 제거하기 (1) | 2024.02.25 |
[programmers]python 12924 숫자의 표현 (0) | 2024.02.16 |
[programmers] python 12911 다음 큰 숫자 (0) | 2024.02.16 |
[programmers]python 70129 이진 변환 반복하기 (0) | 2024.02.07 |