๐ฌ ๊ฒฐ๊ณผ์ ์์น์๋ ์๊ด ์์ด 6๊ฐ ์๋ฆฌ๋ฅผ ๋ฝ๋ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ ์กฐํฉ ์ ์ด์ฉํด ํด๊ฒฐํ์์ต๋๋ค. ๊ทธ ์ค์์ ์ฌ๊ท ๋ฐฉ์์ ์ฌ์ฉํ์ต๋๋ค. ์์ด/์กฐํฉ์ ์๊ณ ๋ฆฌ์ฆ ์์ฒด๋ฅผ ์๊ธฐํด์ผ๊ฒ ์ต๋๋ค.
๋ ์ผ ๋ก๋๋ {1, 2, ..., 49}์์ ์ 6๊ฐ๋ฅผ ๊ณ ๋ฅธ๋ค.
๋ก๋ ๋ฒํธ๋ฅผ ์ ํํ๋๋ฐ ์ฌ์ฉ๋๋ ๊ฐ์ฅ ์ ๋ช ํ ์ ๋ต์ 49๊ฐ์ง ์ ์ค k(k>6)๊ฐ์ ์๋ฅผ ๊ณจ๋ผ ์งํฉ S๋ฅผ ๋ง๋ ๋ค์ ๊ทธ ์๋ง ๊ฐ์ง๊ณ ๋ฒํธ๋ฅผ ์ ํํ๋ ๊ฒ์ด๋ค.
์๋ฅผ ๊ณ ๋ฅด๋ ๋ชจ๋ ๋ฐฉ๋ฒ์ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class ๋ก๋ {
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
while(true) {
StringTokenizer st = new StringTokenizer(br.readLine());
int n = Integer.parseInt(st.nextToken());
int arr[] = new int[n+1];
int visit[] = new int[n+1];
if(n == 0) {
break;
}
// ๋ฐฐ์ด ์ ์ฅ
for(int i = 1; i < n + 1; i++) {
arr[i] = Integer.parseInt(st.nextToken());
}
// ์กฐํฉ start!
com(arr, visit, 1, 6);
System.out.println();
}
}
static void com(int arr[], int visit[], int depth, int r) {
if(r == 0) {
for(int i = 1; i < arr.length; i++) {
if(visit[i] == 1) {
System.out.print(arr[i] + " ");
}
}
System.out.println();
return;
}
if(depth == arr.length) {
return;
}
else {
visit[depth] = 1;
com(arr, visit, depth + 1, r - 1);
visit[depth] = 0;
com(arr, visit, depth + 1, r);
}
}
}