알고리즘 - 피보나치 수

HoJeong Im·2021년 9월 30일
0

Break_Algo

목록 보기
30/46

문제

코드

function solution(n) {
    let answer = 0;
    
    let arr = [0,1,1]
    
    for(let i = 2 ; i <= n ; i++){
        
        let first = (i-2)%3;
        let second = (i-1)%3;
        let third = (i)%3;
        arr[third] = arr[first]%(1234567) + arr[second]%(1234567);
        //console.log(arr)
    }
    
    //console.log(arr[n%3]);
    
    return arr[n%3]%(1234567);
}

코드

  • 일반적인 재귀 코드도 사용가능하지만,

  • 반복문으로 배열에 값을 미리 정해두고 사용해서도 풀 수 있음

  • 어차피 i-1,i-2값만 활용해서 i값에 해당하는 값을 구해두면 쉽게 메모리도 아끼고 풀 수 있음

profile
꾸준함이 제일 빠른 길이었다

0개의 댓글