BOJ_S3_15652
๐ [S3_15652] N๊ณผM(4)
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main {
static StringTokenizer st;
static int N, M;
static int[] arr;
static boolean[] v;
static StringBuilder sb;
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
sb = new StringBuilder();
st = new StringTokenizer(br.readLine(), " ");
N = Integer.parseInt(st.nextToken());
M = Integer.parseInt(st.nextToken());
arr = new int[M + 1];
v = new boolean[N + 1];
comb(0, 1);
System.out.println(sb);
}
static void comb(int idx, int start) {
// ๊ธฐ์ ์กฐ๊ฑด
if (idx == M) {
for (int i = 0; i < M; i++) {
sb.append(arr[i]).append(" ");
}
sb.append("\n");
return;
}
for (int i = start; i < N + 1; i++) {
arr[idx] = i;
comb(idx + 1, i);
}
}
}
๐ค ๋์ ์๊ฐ
์ด ๋ฌธ์ ๋ ์์๊ฐ ์๊ด์๋ ๋ฌธ์ ์ด๋ค. ์กฐํฉ ๋ฌธ์ ์ด๋ค. nPm
์ด ๋ฌธ์ ๋ ๋ฝ๋ ์๋ค์ด ๊ฐ์ ๊ฐ์ผ ๋๋ ์ถ๋ ฅ๋๊ธฐ ๋๋ฌธ์ ๊ทธ ๊ฒฝ์ฐ๋ฅผ ์ ํด๊ฒฐํด์ผํ๋ค.
๊ทธ ๋ฌธ์ ๋ ์ฌ๊ท๋ก ๊ฐ์ ๋ณด๋ด์ค๋ i์ +1์ ํ์ง ์๊ณ ์์์ ๋ณธ์ธ๋ถํฐ ํ๊ฒ ํ๋ค.
์กฐํฉ ๋ํ ์์ธํ ์ค๋ช
์ ์ ์๋ค.