1부터 N까지 번호가 적힌 구슬이 있습니다. 이 중 M개를 뽑는 방법의 수를 출력하는 프로그램을 작성하세요.
첫 번째 줄에 자연수 N(3<=N<=10)과 M(2<=M<=N) 이 주어집니다.
첫 번째 줄에 결과를 출력합니다. 맨 마지막 총 경우의 수를 출력합니다. 출력순서는 사전순으로 오름차순으로 출력합니다.
4 2
1 2
1 3
1 4
2 3
2 4
3 4
function solution(N, M) {
let answer = [];
let temp = Array.from({ length: M }, () => 0);
function DFS(L, s) {
if (L === M) {
answer.push(temp.slice());
} else {
for (let i = s; i <= N; i++) {
temp[L] = i;
DFS(L + 1, i + 1);
}
}
}
DFS(0, 1);
return answer;
}
console.log(solution(4, 2));