import java.util.ArrayList;
import java.util.Scanner;
public class Main {
static public ArrayList < Integer > list;
static public int[] solution;
public static void main(String[] args) {
Scanner scn = new Scanner(System.in);
int count = 0;
while (true) {
String arr[] = scn.nextLine().split(" ");
if (arr[0].equals("0"))
break;
if (count != 0)
System.out.println();
list = new ArrayList<Integer>();
for (int i = 1; i < arr.length; i++)
list.add(Integer.parseInt(arr[i]));
solution = new int[6];
used = new int[list.size()];
backtracking(0, 0);
count++;
}
}
public static void backtracking(int n, int pos) {
if (n == 6) {
for (int i = 0; i < 6; i++) {
if (i != 0)
System.out.print(" ");
System.out.print(solution[i]);
}
System.out.println();
return;
}
for (int i = pos; i < list.size(); i++) {
solution[n] = list.get(i);
backtracking(n + 1, i + 1);
}
}
/*題目:UVA Q441:Lotto
作者:1010
時間:西元 2018 年 11 月 */
}
public class Main {
static int arr[]= {1,2,3,4,5}; // S集合
static int ans[]=new int[3]; // 從集合中取三個的組合
public static void main(String[] args) {
backtracking(0,0);
}
public static void backtracking(int n,int pos) {
if(n==3) { // 若dimension維度是第三層代表找完答案依序印出並結束遞迴
for(int i=0;i<3;i++) {
System.out.print(ans[i]+" ");
}
System.out.println();
return;
}
for(int i=pos;i<5;i++) {// 每次遞迴從pos開始這樣就不會遇到重複值
ans[n]=arr[i];
backtracking(n+1,i+1);
}
}
/* 五個數字取三個並由小到大排列
作者:1010
時間:西元 2018 年 11 月 */
}
public class Main {
static int arr[]= {1,2,3,4,5}; // S集合
static int ans[]=new int[3]; // 從集合中取三個的組合
static int check[]=new int[5]; // 檢查該數是否在ans[]集合中
public static void main(String[] args) {
backtracking(0);
}
public static void backtracking(int n) {
if(n==3) { // 若dimension維度是第三層代表找完答案依序印出並結束遞迴
for(int i=0;i<3;i++) {
System.out.print(ans[i]+" ");
}
System.out.println();
return;
}
for(int i=0;i<5;i++) {
if(check[i]==0) {// 判斷該數是否已經出現在ans[]中
check[i]=1;
ans[n]=arr[i];
backtracking(n+1);
check[i]=0;
}
}
}
/* 五個數字取三個所有組合(無大小順序限制)
作者:1010
時間:西元 2018 年 11 月 */
}