나의 답 :
# def fib(n):
# if n == 0:
# return 0
# if n == 2 or n == 1:
# return 1
# else:
# return fib(n-2)+fib(n-1)
# def solution(n):
# return fib(n) % 1234567
def solution(n):
l=[0,1]
for i in range(1,n):
l.append(l[i-1]+l[i])
return l[-1]%1234567
다른 사람의 답 :
def fibonacci(num):
a,b = 0,1
for i in range(num):
a,b = b,a+b
return a
다른 사람의 답 너무 좋다. 깔끔하다
n이 십만까지 커질 수 있기 때문에 재귀 ㄴㄴ
DP로 ㄱㄱ
'공부 > 코딩테스트' 카테고리의 다른 글
[프로그래머스] 최댓값과 최솟값(파이썬) (0) | 2022.01.05 |
---|---|
[프로그래머스] 최솟값 만들기(파이썬) (0) | 2022.01.05 |
[프로그래머스] 행렬의 곱셈(파이썬) (0) | 2022.01.04 |
[프로그래머스] N개의 최소공배수(파이썬) (0) | 2022.01.01 |
[프로그래머스] JadenCase 문자열 만들기(파이썬) (0) | 2021.12.30 |