Cod sursa(job #2015695)

Utilizator BovisioNitica Ionut Bogdan Bovisio Data 27 august 2017 00:06:24
Problema Submultimi Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.66 kb
#include <cstdio>

using namespace std;

int n,s[25];

void Afis(int k)
{
    for(int i=1;i<=k;i++)
        printf("%i ",s[i]);
    printf("\n");
}

bool Valid(int k)
{
    for(int i=1;i<=k-1;i++)
    {
        if(s[k] == s[i])
            return false;
    }
    if(s[k-1] > s[k])
        return false;
    return true;
}

void Back(int k)
{
    for(int i=1;i<=n;i++)
    {
        s[k] = i;
        if(Valid(k))
        {
            Afis(k);
            Back(k+1);
        }
    }
}

int main()
{
    freopen("submultimi.in","r",stdin);
    freopen("submultimi.out","w",stdout);
    scanf("%i",&n);
    Back(1);
    return 0;
}