潘CSP100班
枚举从n个元素中选任意个元素的所有方案(共 2^n 种)
for (int i = 0; i < (1<<n); i++) // i从0枚举到2^n-1,这里(1<<n)表示 2^n。(如果不输出空集,则i从1开始) { bitset<30> b(i); // 将i转换为二进制数b,即0…0到1…1 for (int j=0; j<n; j++) // 找出b中所有的1,表示a中对应元素被选入 { if (b[j]==1) // b的第j位为1,表示a的第j个元素被选入 { …… } } }