Cod sursa(job #727558)

Utilizator alexarnautuArnautu Alexandru alexarnautu Data 28 martie 2012 08:44:29
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
#include <cstdio>

FILE * iFile;
FILE * oFile;

int a[9], b[9], n;

void back(int k)
{
    int i;
    if(k-1 == n)
    {
        for(i=1;i<=n;i++)
            fprintf(oFile, "%d ", a[i]);
        fprintf(oFile, "\n");
    } else {
        for(i=1;i<=n;i++)
        {
            if(!b[i])
            {
                a[k] = i;
                b[i] = 1;
                back(k+1);
                b[i] = 0;
            }
        }
    }
}

int main()
{
    iFile = fopen("permutari.in", "r");
    oFile = fopen("permutari.out", "w");

    fscanf(iFile, "%d", &n);

    back(1);

    fclose(iFile);
    fclose(oFile);

    return 0;
}