子集生成

来源:互联网 发布:汽车网站模板源码 编辑:程序博客网 时间:2024/05/22 03:44

给出一个集合,生成该集合的任意子集。

# include<cstdio># include<iostream>using namespace std;void subset(int n,int* a,int cur){    if(n==cur)    {        for(int i=1; i<=n; i++)            if(a[i-1]) cout<<i<<" ";        cout<<endl;    }    else    {        a[cur]=1;        subset(n,a,cur+1);        a[cur]=0;        subset(n,a,cur+1);    }}int a[100];int main(){    int n;    cin>>n;    subset(n,a,0);    return 0;}
0 0
原创粉丝点击