Cod sursa(job #275494)

Utilizator robertzelXXX XXX robertzel Data 10 martie 2009 15:08:11
Problema Generare de permutari Scor 20
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include <stdio.h>

int n;
int v[100],k[100];
FILE *in, *out;

void afis()
{
	int i;

	for(i=1; i<=n; i++) {
		fprintf(out,"%d",v[i]);
	}

	fprintf(out,"\n");
}
void backtr (int x) {
	int i;

	for (i=1; i<=n; i++) {
		if(k[i]==0){
			v[x] = i;
			k[i] = 1;

			if (x==n) {
				afis();
			} else {
				backtr(x+1);
			}

			k[i] = 0;
		}
	}
}

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

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

	backtr(1);

	fclose(in);
	fclose(out);
	return 0;
}