Cod sursa(job #1568581)

Utilizator radu_uniculeu sunt radu radu_unicul Data 14 ianuarie 2016 14:55:26
Problema Generare de permutari Scor 20
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include<cstdio>

using namespace std;

int v[9],n;

void print()
{
    for(int i=0;i<n;i++) printf("%d ",v[i]);
    printf("\n");
}


bool ok()
{
    for(int i=0;i<n-1;i++)
        for(int j=i+1;j<n;j++) if(v[i]==v[j]) return 0;
    return 1;
}

void bt(int k)
{
    for(int a=1; a<=n; a++)
    {
        v[k]=a;
        if(k!=n) bt(k+1);
        else if(ok()) print();
    }
}

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