[알고리즘] 백준 - 15651 ( N과 M (6) ) / 자바
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.StringTokenizer;
public class Main {
private static int N, M;
private static int[] map;
private static int[] result;
private static boolean[] visit;
private static StringBuilder sb = new StringBuilder();
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());
map = new int[N];
result = new int[M];
visit = new boolean[N+1];
st = new StringTokenizer(br.readLine());
for (int i=0; i<N; i++) {
map[i] = Integer.parseInt(st.nextToken());
}
Arrays.sort(map);
dfs(0, 0);
System.out.print(sb);
}
private static void dfs(int start , int at ) {
//종료 조건
if (start == M) {
for (int i=0; i<result.length; i++) {
sb.append(result[i]).append(" ");
}
sb.append("\n");
} else {
for (int i= at; i<N; i++) {
if (!visit[i]) {
visit[i] = true;
result[start] = map[i];
dfs(start+1,i+1);
visit[i] = false;
}
}
}
}
}
Author And Source
이 문제에 관하여([알고리즘] 백준 - 15651 ( N과 M (6) ) / 자바), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@cheal3/알고리즘-백준-15651-N과-M-6-자바-nr0edw57저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)