Cod sursa(job #759092)

Utilizator MarquiseMarquise Marquise Data 16 iunie 2012 17:52:29
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.75 kb
#include <cstdio>
#define NMAX 10

using namespace std;

int n, viz[NMAX], s[NMAX];
FILE *in, *out;

void afis()
{
     for (int i = 1; i <= n; i++)
         fprintf(out, "%d ", s[i]);
     fprintf(out, "\n");    
}

void back(int k)
{
     int i;
     
     if (k == n + 1)
        afis();
     else
     {
         for ( i = 1; i <= n; i++)
             if (!viz[i])
             {
                  s[k] = i;       
                  viz[i] = 1;
                  back(k + 1);
                  viz[i] = 0;
             }
     }   
}


int main()
{
    
    in = fopen("permutari.in", "r");
    out = fopen("permutari.out", "w");
    fscanf(in, "%d", &n);
    back(1);    
    fclose(in);
    fclose(out);
    return 0;
}