Cod sursa(job #232578)

Utilizator mISHOOOmISHOOO mISHOOO Data 15 decembrie 2008 19:47:06
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.52 kb
#include <stdio.h>

FILE *fi = fopen("permutari.in", "r");
FILE *fo = fopen("permutari.out", "w");

#define NMAX 100

char V[NMAX], U[NMAX], N;

void afisare() {
	for (int i=0; i<N; i++) fprintf(fo, "%d ", V[i]);
	fprintf(fo, "\n");
}

void genPerm(int k) {
	if (k == N) afisare();
	else {
		for (int i=1; i<=N; i++)
			if (!U[i]) {
				V[k] = i;
				U[i] = 1;
				genPerm(k+1);
				U[i] = 0;
			}
	}
}


int main() {
	fscanf(fi, "%d\n", &N);
	genPerm(0);

	fclose(fi);
	fclose(fo);

	return 0;
}