피보나치 수 자바스크립트
function solution(n) {
let a = 0;
let b = 1;
let c = a + b;
let times = 0;
while(times != n-2) {
a = b;
b = c;
c= (a + b) % 1234567
times++
}
return c
}
피보나치수를 먼저 구한 뒤에 1234567을 나누게 되면 굉장히 큰 숫자가 나오게 되어 테스트를 통과할 수 없다.
(a+b) % c = ((a%c) + (b%c)) %c 의 성질을 이용하여 피보나치수가 나올 때마다 나머지를 반환하면 BigInt를 피해가면서 값을 도출해낼 수 있다.
Author And Source
이 문제에 관하여(피보나치 수 자바스크립트), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@gytlr01/피보나치-수-자바스크립트저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)