
const fs = require('fs');
const path = process.platform === 'linux' ? '/dev/stdin' : 'Wiki\\input.txt';
const [n, m] = fs
.readFileSync(path)
.toString()
.trim()
.split(' ')
.map((it) => Number(it));
let answer = '';
const bt = (target, cnt) => {
if (cnt === m) {
answer += target + '\n';
return;
}
for (let i = 1; i <= n; i++) {
bt(target + ' ' + i, cnt + 1);
}
};
for (let i = 1; i <= n; i++) {
bt(i.toString(), 1);
}
console.log(answer);
이전문제인 N과 M(1) 과 동일하게 풀어주었다. 다만 재귀호출을 수행하기 전 중복된 값을 체크해주던 조건문을 제거했다.