Cod sursa(job #1317150)

Utilizator Tudordmdaniel marin Tudordm Data 14 ianuarie 2015 17:02:31
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include <cstdio>

using namespace std;

 int sol[41000];
 int n;

bool valid (int p){

    for(int i=1;i<p;i++)

        if(sol[i]==sol[p])  return false;

        return true;

}

void afisare (){

    for( int i=1;i<=n;i++)

        printf("%d ",sol[i]);

    printf("\n");

}


void bkt (int p){

    if(p-1==n)  afisare ();

    else
        for(int i=1;i<=n;i++){

            sol[p]=i;
            if(valid(p))    bkt(p+1);

        }
}

int main(){

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

    scanf("%d",&n);
    bkt(1);

    return 0;
}