Cod sursa(job #1814400)

Utilizator Andrei501Clicinschi Andrei Andrei501 Data 23 noiembrie 2016 22:15:33
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.8 kb
#include <cstdio>

using namespace std;

int st[10],N;

void print (int p)
{
    int j;
    for (j=1; j<=p; j++)
    {
        printf ("%d ",st[j]);
    }
    printf ("\n");
}

int valid (int p)
{
    int j,s=1;
    for (j=1; j<=p-1; j++)
    {
        if (st[p]==st[j])
        {
            s=0;
        }
    }
    return s;
}

void bkt (int p)
{
    int j;
    for (j=1; j<=N; j++)
    {
        st[p]=j;
        if (valid(p)==1)
        {
            if (p==N)
            {
                    print (p);
            }
            else
            {
                bkt (p+1);
            }
        }
    }
}

int main()
{
    freopen ("permutari.in","r",stdin);
    freopen ("permutari.out","w",stdout);

    scanf ("%d",&N);

    bkt(1);

    return 0;
}