Cod sursa(job #851218)

Utilizator aLyZAlex Zaharia aLyZ Data 9 ianuarie 2013 18:20:35
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.64 kb
#include<fstream>
using namespace std;
ifstream f("permutari.in");
ofstream g("permutari.out");
int st[25],n;

void start()
{
    int i;
    f>>n;
    for(i=1;i<=n;i++)
        st[i]=0;
}
void tipar(int p)
{
    int j;
    for(j=1;j<=n;j++)
        g<<st[j]<<" ";
    g<<"\n";
}
int valid(int p)
{
    int i,ok=1;
    for(i=1;i<p;i++)
        if(st[p]==st[i])ok=0;
    return ok;
}
void bktr(int p)
{
    int x;
    for(x=1;x<=n;x++)
    {
        st[p]=x;
        if(valid(p))
            if(p==n) tipar(p);
        else
            bktr(p+1);
    }
}

int main()
{
    start();
    bktr(1);
    return 0;
}