알고리즘/프로그래머스 문제풀이

[프로그래머스] lv.2 피보나치 수 풀이

감자156 2023. 11. 19. 19:17
반응형

문제

https://school.programmers.co.kr/learn/courses/30/lessons/12945

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

문제 풀이

시간 효율을 위해 이전값, 이전전값 을 num까지 갱신해가며 풀이

 

코드

1) 리스트 사용

def solution(num):
    dp = [0 for _ in range(num+1)]
    dp[1] = 1
    dp[2] = 1
    
    for i in range(3, len(dp)):
        dp[i] = dp[i-1] + dp[i-2]
        
    return dp[-1]%1234567

 

2) 리스트 사용 X

def solution(num):
    a,b = 0, 1
    for i in range(num-1):
        a,b = b, a+b
        
    return b%1234567

 

반응형