[프로그래머스] 구슬을 나누는 경우의 수

butterbeetle·2023년 1월 25일
0

코딩테스트

목록 보기
9/132
post-thumbnail

문제설명

머쓱이는 구슬을 친구들에게 나누어주려고 합니다. 구슬은 모두 다르게 생겼습니다. 머쓱이가 갖고 있는 구슬의 개수 balls와 친구들에게 나누어 줄 구슬 개수 share이 매개변수로 주어질 때, balls개의 구슬 중 share개의 구슬을 고르는 가능한 모든 경우의 수를 return 하는 solution 함수를 완성해주세요.

제한사항

  • 1 ≤ balls ≤ 30
  • 1 ≤ share ≤ 30
  • 구슬을 고르는 순서는 고려하지 않습니다.
  • share ≤ balls

입출력 예

ballsshareresult
323
5310

내 풀이

function solution(n, m) {
    const factorial = (num) => {
        const bigNum = BigInt(num);

        return ((bigNum > 1) ? bigNum * factorial(bigNum -BigInt(1)) : BigInt(1)); 
    }

    return factorial(n)/(factorial(n-m)*factorial(m));
}

BigInt 라는걸 처음 알았다..

profile
멍청이

0개의 댓글