Cod sursa(job #730003)

Utilizator StefanLacheStefan Lache StefanLache Data 1 aprilie 2012 12:05:38
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.68 kb
#include<stdio.h>
int v[8],N;
 FILE *g=fopen("permutari.out","wt");
int bun(int k)
{
    int i;
    for(i=0;i<k;++i)
        if(v[i] == v[k])
            return 0;
    return 1;
}
int sol(int k)
{
    if(k==N-1)
        return 1;
    return 0;
}
void afiseaza(int k)
{
    int i;
    for(i=0;i<=k;++i)
        fprintf(g,"%i ",v[i]);
    fprintf(g,"\n");
}
void back(int k)
{
    int i;
    for(i=1;i<=N;++i)
    {
        v[k]=i;
        if(bun(k))
            if(sol(k))
                afiseaza(k);
        else back(k+1);
    }
}
int main()
{
    FILE *f=fopen("permutari.in","rt");

    fscanf(f,"%i",&N);
    fclose(f);
    back(0);
    return 0;
}