Cod sursa(job #910168)
| Utilizator | Data | 10 martie 2013 19:16:05 | |
|---|---|---|---|
| Problema | Submultimi | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.67 kb |
#include <cstdio>
#define NMAX 17
using namespace std;
int n;
int s[NMAX];
void write()
{
for(int i = 1; i <= n; ++ i)
if(s[i] == 1)
printf("%d ", i);
printf("\n");
}
void Generate()
{
int f = (1 << n);
for(int i = 0; i < f; ++ i)
{
for(int j = n; j > 0; -- j)
if(s[j] == 0)
s[j] = 1;
else
{
s[j] = 0;
break;
}
write();
}
}
int main()
{
freopen("submultimi.in", "r", stdin);
freopen("submultimi.out", "w", stdout);
scanf("%d", &n);
Generate();
return 0;
}
