Cod sursa(job #1726958)

Utilizator vasi461Vasiliu Dragos vasi461 Data 9 iulie 2016 16:26:46
Problema Submultimi Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.9 kb
#include <fstream>

using namespace std;

ifstream cin("submultimi.in");
ofstream cout("submultimi.out");

int B[20], v[20];

bool zero(int n)
{
    bool ok = false;
    for(int i = 1; i <= n; ++i)
    {
        if(B[i] == 1)
        {
            ok = true;
        }
    }
    return ok;
}

void submultimi(int n, int p)
{
    if (p == n + 1)
    {
        if(zero(n) == true)
        {
            for (int j = 1; j <= n; ++j)
            {
                if(B[j] == 1)
                {
                    cout << v[j] << ' ';
                }
            }
            cout << '\n';
        }
        return;
    }
    for (int i = 0; i <= 1; ++i)
    {
        B[p] = i;
        submultimi(n, p + 1);
    }
}

int main()
{
    int n;
    cin >> n;
    for(int i = 1; i <= n; ++i)
    {
        v[i] = i;
    }
    submultimi (n, 1);
    return 0;
}