개발/알고리즘
백준[1010] - 다리놓기(node.js)
Hana-J
2022. 1. 9. 17:22
> 문제설명
입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. 그 다음 줄부터 각각의 테스트케이스에 대해 강의 서쪽과 동쪽에 있는 사이트의 개수 정수 N, M (0 < N ≤ M < 30)이 주어진다.
> 예제 입출력
3
2 2
1 5
13 29
1
5
67863915
> 풀이
const fs = require('fs');
const input = fs.readFileSync('/dev/stdin').toString().trim().split('\n');
const A = parseInt(input.shift());// 첫번째 값 제거
let num=0;
function factorial(num){
if(num<=1) return 1;
return num * factorial(num-1);
}
for(let i = 0 ;i <A; i++){
const arr= input[i].split(' ');
const N = parseInt(arr[0]);
const M = parseInt(arr[1]);
console.log(Math.round((factorial(M)/(factorial(M-N)*factorial(N)))));
}
728x90