알고리즘🅰/프로그래머스
[프로그래머스] 멀리 뛰기
개발조각
2023. 3. 8. 12:09
728x90
반응형
문제
https://school.programmers.co.kr/learn/courses/30/lessons/12914
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
해결방안
문제를 읽어보시면
'효진이는 한 번에 1칸, 또는 2칸을 뛸 수 있습니다.'
'멀리뛰기에 사용될 칸의 수 n이 주어질 때, 효진이가 끝에 도달하는 방법이 몇 가지인지'
'여기에 1234567를 나눈 나머지를 리턴하는 함수'
이 말을 보니 이문제는 피보나치 수 문제군아 했습니다.
- f(0) = 0
- f(1) = 1
- f(2) = 2
- f(3) = 3
- f(4) = 5
여기서 n이 0, 1, 2일 경우에는 일정하니 미리 배열에 담고 3부터 피보나치로 계산해 주면 됩니다.
소스코드
function solution(n) {
const arr = [0, 1, 2];
for(let i=3; i<=n; i++){
arr[i] = (arr[i-1] + arr[i-2])%1234567
}
return arr[n]
}
728x90
반응형