public class ZiJi {
public static void main(String[] args) {
int a[]= {1,2,3};
int n=a.length;
int []x=new int[n];
backtrack(a,n,0,x);
}
static void backtrack(int[] a,int n,int t,int x[]){
if(t>=n){
System.out.print("{");
for(int j=0;j<n;j++){
if(x[j]==1){
System.out.print(a[j]+",");
}
}
System.out.println("}");
}
else{
for(int j=0;j<2;j++) {
x[t]=j;
backtrack(a,n,t+1,x);
}
}
}