치춘짱베리굿나이스
[백준] 2407 본문
조합
문제
nCm을 출력한다.
입력
n과 m이 주어진다. (5 ≤ n ≤ 100, 5 ≤ m ≤ 100, m ≤ n)
출력
nCm을 출력한다.
풀이
const comb = () => {
const [n, m] = require("fs")
.readFileSync("/dev/stdin")
.toString()
.trim()
.split(" ")
.map(Number);
const dp = Array.from({ length: n + 1 }, (v) => BigInt(0));
dp[1] = BigInt(1);
for (let i = 2; i <= n; i++) dp[i] = dp[i - 1] * BigInt(i);
console.log(String(dp[n] / dp[n - m] / dp[m]));
};
comb();
반성회
100단위 팩토리얼은 수가 엄청나게 커지기 때문에 BigInt
를 사용하였다
BigInt
를 사용하지 않으면 어떻게 풀어야하지… 아마 n부터 n - m까지 곱한 값을 dp에 담지 않을까
'Javascript + Typescript > 자바스크립트로 알고리즘풀기' 카테고리의 다른 글
[백준] 1676 (0) | 2022.07.03 |
---|---|
[백준] 1620 (0) | 2022.06.27 |
[백준] 2910 (0) | 2022.06.26 |
[백준] 20492 (0) | 2022.06.26 |
[백준] 2910 (0) | 2022.06.25 |
Comments