C++ 二进制枚举模板(求n的所有子集)

#include <bits/stdc++.h>
using namespace std;
int main()
{
    int n;
    cin >> n;
    for(int i = 0; i < (1<<n); i++) //从0~2^n-1个状态
    {
        for(int j = 0; j < n; j++) //遍历二进制的每一位
        {
            if(i & (1 << j))//判断二进制第j位是否存在
            {
                printf("%d ",j);//如果存在输出第j个元素
            }
        }
        printf("\n");
    }
    return 0;
}

C++ 二进制枚举模板(求n的所有子集) ACM

本文标题:《C++ 二进制枚举模板(求n的所有子集)》作者:Scar
原文链接:https://cxk.me/post/8.html
特别注明外均为原创,转载请注明。

分享到微信

扫描二维码

可在微信查看或分享至朋友圈。

下一篇: C++ 并查集模板

相关文章

访客 访客 发布于 2024-07-03 14:49:50  
http://www.jinpaibeer.cn/post/11733.html
太高深了,理解力不够用了!http://www.jinpaibeer.cn/post/11733.html 回复
发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。