ํผ๋ณด๋์น ์์ด์ ๋ฐ๋ณต๋ฌธ, ์ฌ๊ท, DP์์ ๊พธ์คํ ๋ค๋ค์จ ๋ถ๋ถ์ด๋ผ ๊ฐ๋ฒผ์ด ๋ง์์ผ๋ก ์์ํ๋ค.
๋น์ฐํ, ํผ๋ณด๋์น๋ ์ฌ๊ท์ง.. ํ๊ณ 1์ฐจ ์๋ ํ์ผ๋..
function solution(n) {
let fibo = (n) => { //
if (arr[n] !== undefined){
return arr[n];
}
arr[n] = fibo(n-1)+fibo(n-2);
return arr[n]% 1234567;
}
return fibo(n);
}
//์คํ ์ค๋ฒํ๋ก์ฐ๋ก ์คํ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋๋ ํจ์ํธ์ถ. ๋ค์ชฝ ํ
์คํธ ์ผ์ด์ค ํต๊ณผ์๋จ
2์ฐจ์๋
function solution(n) {
let memo = [0, 1, 1];
for(let i = 3; i <= n; i++){
memo[i] = memo[i-1]+memo[i-2];
}
return memo[n] %1234567 //์ด๋ฏธ ์ค๋ฒํ๋ก์ฐ๋ก ๊ฐ์ด ๋ง๊ฐ์ง ์ํ
}
3์ฐจ ์๋ ์ฑ๊ณต
function solution(n) {
let memo = [0, 1, 1];
for(let i = 3; i <= n; i++){
//(a+b)%c === ((a%c)+(b%c))%c ๋ชจ๋๋ฌ ์ฐ์ฐ์ ์ฑ์ง
memo[i] = (memo[i-1] + memo[i-2])%1234567
//๋ฐฐ์ด ์์์ ๋๋จธ์ง๊ฐ์ ๋ฃ์ด ์ค์ผ๋ก ์ค๋ฒํ๋ก์ฐ๋ฅผ ๋ฐฉ์ง
}
return memo[n]
}
๋๊ธ