본문 바로가기
개발 공부 일지/JavaScript

[프로그래머스] 멀리뛰기

by yelimu 2025. 3. 21.

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

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

문제를 마주하고, 순간이동 문제처럼 n 에서부터 거꾸로 접근해야하나 , 모든 경우의 수를 배열로 만들어야하나 싶었는데

노트에 몇개 써보니 어랏.. 피보나치네? 

아까 풀었던 기억을 더듬더듬 하면서 풀이에 성공했ㄷㅏ ㅎㅎ 

function solution(n) {
    let arr = [1, 2]
    for (let i = 2; i <= n; i++){
        arr[i] = (arr [i - 1] + arr [i - 2]) % 1234567
    }
    return arr[n - 1] 
}

https://itgoblin.tistory.com/138

 

피보나치 문제 풀 때 왜 1234567로 나눈 나머지를 사용해야 하는가

프로그레머스 Lv.2 피보나치 수 문제다. 피보나치 n번째 자리 수를 1234567로 나눈 나머지 값을 구하라는 문제였다 (n은 2 이상). 왜 나누어야 하는걸까? 힌트를 보니 n이 커질수록 리턴해야 하는 값

itgoblin.tistory.com

https://school.programmers.co.kr/questions/11991

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

모듈러 연산의 성질 =>

(A + B) % C의 값은 ( ( A % C ) + ( B % C) ) % C와 같다

놀랍군..

https://sskl660.tistory.com/75

 

모듈러 산술(Modular Arithmetic)

*모듈러 산술(Modular Arithmetic) -> 모듈러 산술(모듈러 연산)은 정수의 합과 곱을 어떤 주어진 수의 나머지를 이용하여 정의하는 방법을 말한다. -> 쉽게 말해 나머지를 이용한 산술 연산이라고 생각

sskl660.tistory.com

https://velog.io/@sw801733

 

나머지 연산 분배법칙 (모듈러 연산)

나머지 modulo 연산은 a mod b 에 대해서 0 ~ b 까지의 범위를 가지기 때문에a 가 매우 큰 값인 경우더라도 적절한 b 의 설정으로 작은 값으로 바꿀 수 있다.이러한 나머지 연산이 가지는 분배법칙 성

velog.io

 

 

와우 요런 자료도 있다니.. 멋지다..  

https://80000coding.oopy.io/8a848058-f7c7-43f1-825a-2b38b71a3e40

 

자료구조 / 알고리즘

 

80000coding.oopy.io