Cod sursa(job #1258020)

Utilizator NicusorTelescu Nicolae Nicusor Data 8 noiembrie 2014 13:17:32
Problema Submultimi Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 1.22 kb
/*#include<stdio.h>
int n,nr=-1;
int st[22];

void back()
{
    int i;
    for(i=1;i<=st[0];i++)
        printf("%d ",st[i]);
    if(st[0])
        printf("\n");
    for(i=st[st[0]]+1;i<=n;i++)
    {
        st[++st[0]]=i;
        back();
        st[st[0]]=0;
        st[0]--;
    }
}

int main()
{
    freopen("submultimi.in","r",stdin);
    freopen("submultimi.out","w",stdout);
    scanf("%d",&n);
    back();
    return 0;
}*/

/*#include<stdio.h>
int n;
int main()
{
    freopen("submultimi.in","r",stdin);
    freopen("submultimi.out","w",stdout);
    scanf("%d",&n);
    int i,j,lim=1<<n;
    for(i=1;i<lim;i++)
    {
        for(j=1;j<=n;j++)
            if(i&(1<<(j-1)))
                printf("%d ",j);
        printf("\n");
    }
    return 0;
}*/



#include <cstdio>

using namespace std;

int main()
{
    freopen("submultimi.in","r",stdin);
    freopen("submultimi.out","w",stdout);
    int n;
    scanf("%d ",&n);
    int lim=1<<n;
    for (int i=1;i<lim;i++)
    {
        int j=i,l=1;
        while (j)
        {
            if (j%2==1) printf("%d ",l);
            l++;
            j=j/2;
        }
        printf("\n");
    }

}