Pagini recente » Diferente pentru problema/covrigi intre reviziile 1 si 2 | Diferente pentru problema/compresie intre reviziile 14 si 13 | Monitorul de evaluare | Diferente pentru problema/misakatelefon intre reviziile 4 si 3 | Cod sursa (job #1183481)
#include <iostream>
#include <cstdio>
#include <algorithm>
#include <vector>
using namespace std;
int main()
{
freopen("submultimi.in", "r", stdin);
freopen("submultimi.out", "w", stdout);
int n;
cin >> n;
for (int i = 0; i < 1<<n; i++) {
int x = i<<1;
while (x > 0) {
printf("%d%s", __builtin_ctz(x), (x & (x-1)) != 0 ? " " : "\n");
x &= x-1;
}
}
return 0;
}