34 lines
1.0 KiB
Java
34 lines
1.0 KiB
Java
import java.util.*;
|
|
|
|
// 제출시 class 명을 Main으로 바꿀것!
|
|
public class _15666 {
|
|
static void dfs(int N, int M, int[] nums, int[] result, int current, int len){
|
|
if(len == M) {
|
|
for (int i=0; i<len; i++) {
|
|
System.out.printf("%d ",result[i]);
|
|
}
|
|
System.out.printf("\n");
|
|
return;
|
|
}
|
|
|
|
int prev = -1;
|
|
for(int i=current; i<N; i++){
|
|
if(nums[i] != prev) {
|
|
result[len] = nums[i];
|
|
dfs(N,M,nums,result,i,len+1);
|
|
prev = nums[i];
|
|
}
|
|
}
|
|
}
|
|
public static void main(String[] args) {
|
|
Scanner sc = new Scanner(System.in);
|
|
int[] line = Arrays.stream(sc.nextLine().split(" ")).mapToInt(Integer::parseInt).toArray();
|
|
int N = line[0], M = line[1];
|
|
int[] nums = Arrays.stream(sc.nextLine().split(" ")).mapToInt(Integer::parseInt).toArray();
|
|
Arrays.sort(nums);
|
|
sc.close();
|
|
|
|
int[] result = new int[M];
|
|
dfs(N,M,nums, result,0,0);
|
|
}
|
|
} |