toy

    Toy 문제2

    문제 재귀함수를 사용하여 피보나치 수열 나타내기 반복문 사용 금지 해석(수도코드) 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1입니다. 그 다음 2번째 피보나치 수부터는 바로 직전의 두 피보나치 수의 합으로 정의합니다. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, ... 보통 첫 번째는 0, 두 번째는 1로 고정이 되어있고. n>=2 이라면 (n-1)(n-2) 공식이 성립되는 식입니다. 하지만 무작정 재귀 함수를 사용하여 피보나치수열을 나타내게 되면 // let fibonacci = function (n) { // if (n { if (result[n] !== undefined) return result[n]; result[n] = fibo(n - 1) + fibo(n - ..

    Toy 문제 1

    문제 숫자 N 숫자 N의 경우의 수를 나열하였을 때 K가 몇 번째 위치한 경우의 수 인지 찾아야 합니다. 모든 경우의 수가 담긴 배열은 번호가 작을수록 앞에 위치한다고 가정합니다. ex) N = 3일경우, [[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]] 해석 (수도코드) N이 작은 값일 때에는 모든 경우의 수를 구하는 것을 펙토리얼로 구하는 것이 나쁘지 않을 수 있지만, 12!는 약 4억 8천만에 해당하며, 일반적인 수행 속도 상한(약 1억)을 훨씬 상회하므로 순열을 전부 생성하는 것은 올바른 접근 방법이 아닙니다. 그렇기 때문에 배열 번호가 작을수록 앞에 위치해야 한다는 점을 펙토리얼과 함께 활용 해야 합니다. 숫자 N을 5 K가 [3, 2, 1, 4, 5] 라..