#include<bits/stdc++.h>
using namespace std;
int a[10] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
int vis[10];
int n = 10, ans;
void dfs (int x) {
if (x == n) {
for (int i = 0;i < n;i ++)
if (vis[i]) cout << a[i] << ' ';
cout << endl;
ans ++;
return ;
}
vis[x] = 1;
dfs (x + 1);
vis[x] = 0;
dfs (x + 1);
}
int main()
{
dfs (0);
cout << ans << endl;
return 0;
}
无非就是第i个数选还是不选。