Cod sursa(job #910902)

Utilizator cristicskCsakany Cristian cristicsk Data 11 martie 2013 10:25:00
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
#include<fstream>
using namespace std;
fstream fin("permutari.in",ios::in);
fstream fout("permutari.out",ios::out);
int x[30];
int n;

void tipar()
{
    int i;
    for(i=1;i<=n;i++)
     fout<<x[i]<<' ';
    fout<<'\n';
}

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

int back()
{
    int i,k=1;
    x[1]=0;
    while(k>0)//stiva nu este vida
    {
    while(x[k]<n)
    {
        x[k]++;
        if(valid(k))
            if(k==n) tipar();
            else{k++;x[k]=0;}
    }
    k=k-1;
    }
}

int main()
{
    fin>>n;
    back();
}