Cod sursa(job #1748677)

Utilizator florinpocolPocol Florin florinpocol Data 26 august 2016 15:32:03
Problema Generare de permutari Scor 100
Compilator c Status done
Runda Arhiva educationala Marime 0.7 kb
#include <stdio.h>
#include <stdlib.h>


int a[20];
int n;

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

int valid(int k)
{
    int i;
    if (k>0)
       for (i=0; i<=k-1; i++)
           if (a[k]==a[i])
                    return(0);
   return(1);
}

void bkt(int k)
{
    int i;
    for (i=1; i<=n; i++)
    {
        a[k]=i;
        if (valid(k)==1)
            if (k==n-1)
                 tipar(n);
                 else
                 bkt(k+1);
    }
}



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