문제풀이
1
2
3
4
5
6
7
8
9
10
|
function solution(n) {
var answer = 0;
let setNumber = [0,1];
for(let x=2; x<=n; x++) {
setNumber.push((setNumber[x-1]+setNumber[x-2]) % 1234567)
}
return setNumber[n];
}
|
cs |
피보나치 수는 0과 1로 시작하며 다음 피보나치의 수는 바로 앞의 두 피보나치의 수의 합이 된다.
이런 식으로 0, 1, 2, 3, 5, 8,...
그렇기 때문에 0, 1 두 숫자를 우선 배열에 담아 두고 주어질 변수 n까지 반복하여 n의 맨 뒤의 두 번째 숫자(x-2)와 맨 뒷 숫자(x-1)의 더하고 문제에서 요구한대로 1234567을 나눈 값을 구해 push 해주어 setNumber에 n번째 숫자를 리턴해주는 식으로 구성했다.
'프로그래머스' 카테고리의 다른 글
5/27[문제풀이] 프로그래머스 Lv2 가장 큰 수 (0) | 2021.05.27 |
---|---|
5/26[문제풀이] 프로그래머스 Lv2 최솟값 만들기 (0) | 2021.05.26 |
5/24[문제풀이] 프로그래머스 Lv2 2개 이하로 다른 비트 (0) | 2021.05.24 |
5/20[문제풀이] 프로그래머스 Lv2 수식 최대화 (0) | 2021.05.21 |
5/19[문제풀이] 프로그래머스 Lv2 다음 큰 숫자 (0) | 2021.05.20 |