1 #include<bits/stdc++.h> 2 using namespace std; 3 4 int main() 5 { 6 char set[]={'a','b','c'}; 7 int sizeSet=sizeof(set)/sizeof(set[0]); 8 9 int sizePowset=pow(2,sizeSet); 10 int cnt=0;//统计输出的子集个数 11 for(int i=0;i<sizePowset;i++) 12 { 13 for(int j=0;j<sizeSet;j++)// 对于0-7这8个数总过检测三个bit所以有此循环 14 { 15 if(i&(1<<j))//左移是检测2_1_0_三个bit上是否为1 16 cout<<set[j];// 如果当前bit为1则输出对应bit位在集合中元素 17 } 18 cout<<endl; 19 cnt++; 20 } 21 cout<<cnt<<endl; 22 return 0; 23 }
Power Set(bits)
猜你喜欢
转载自www.cnblogs.com/chuanwen-tech/p/10653244.html
今日推荐
周排行