Cod sursa(job #1374085)

Utilizator vdorastieNegru Vlad vdorastie Data 4 martie 2015 22:44:25
Problema Submultimi Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.67 kb
#include <iostream>
#include <fstream>
using namespace std;
int a[30], b[30], i, q, p, l, n, m, ok, nr, k;
void calc()
{
    int i;
    for(i=1; i<=n; i++)
    {
        b[i]=1<<(n-i);
    }
}
void rez()
{
    int x=0, i=0;
    nr=0;
    for(i=1; i<=n && x<l; i++)
    {
        if(x<l-b[i]) x+=b[i];
        else
        {
            x++;
            a[++nr]=i;
        }
    }

}
int main()
{
    ifstream fin("submultimi.in");
    ofstream fout("submultimi.out");
    fin>>n;
    m=1<<n;
    calc();
    for(l=1; l<m; l++)
    {
        rez();
        for(i=1; i<=nr; i++)
        fout<<a[i]<<" ";
        fout<<"\n";
    }
    return 0;
}