Notice
Recent Posts
Recent Comments
Link
HwangHub
[백트래킹/자바] 코드트리 IL. N개중에 M개 고르기 본문
문제 해석
이 문제는 주어진 범위에서 조합의 경우의 수를 구하는 문제이므로 전형적인 백트래킹 문제라고 할 수 있다. 여기서 필요한 것은, 중복이 허용되지 않는다는 것이다. 따라서 파라미터를 통해 시작점을 진행시키는 테크닉이 필요했다.
문제 풀이
public class n개중에_m개뽑기 {
private static int n, m;
private static Set<Integer> set = new TreeSet<>();
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
n = Integer.parseInt(st.nextToken());
m = Integer.parseInt(st.nextToken());
go(1);
}
public static void go(int start) {
if (set.size() == m) {
set.forEach(e -> System.out.print(e + " "));
System.out.println();
return;
}
for (int i = start; i <= n; i++) {
set.add(i);
int next = i + 1;
go(next);
set.remove(i);
}
}
}
'workspace > 알고리즘' 카테고리의 다른 글
[완전탐색/자바] 코드트리 IL.양수 직사각형의 최대 크기 (0) | 2023.09.29 |
---|---|
[완전탐색/자바] 코드트리 IL. 행복한 수열의 개수 (0) | 2023.09.28 |
[BFS/자바] 코드트리 IL. 나이트 (0) | 2023.09.26 |
[BFS/자바] 코드트리 IL. 최소 경로로 탈출하기 (0) | 2023.09.23 |
[백트래킹/자바] 코드트리 IL. 1차원 윷놀이 @얉은복사, 깊은복사 (1) | 2023.09.19 |
Comments