Cod sursa(job #1363523)

Utilizator misu007Pogonaru Mihai misu007 Data 27 februarie 2015 00:32:04
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include <cstdio>
using namespace std;

int n,a[8],u[8];
FILE *f=fopen("permutari.in","r"),*g=fopen("permutari.out","w");

int eval(int x) {return !u[x];}

void scrie() {for(int i=0;i<n;++i) fprintf(g,"%d ",a[i]); fprintf(g,"\n");}

void back(int k)
{
    for(int i=1;i<=n;++i)
    {
        if(eval(i-1))
        {
            a[k]=i;
            u[i-1]=1;
            if(k==n-1) scrie();
            else back(k+1);
            u[i-1]=0;
        }
    }
}

int main()
{
    fscanf(f,"%d",&n);
    fclose(f);
    back(0);
    fclose(g);
    return 0;
}