位相量法
#include<iostream>
#include<cstdio>
using namespace std;
int p[10]={1,2,3,4};
int b[10];
const int n=4;
void print_subset(int n,int cur){
if(cur==n){
for(int i=0;i<cur;i++)
if(b[i])cout<<p[i];
cout<<endl;
return ;
}
b[cur]=1;
print_subset(n,cur+1);
b[cur]=0;
print_subset(n,cur+1);
}
int main(){
print_subset(4,0);
return 0;
}