Cod sursa(job #681765)

Utilizator DSzprogDombi Szabolcs DSzprog Data 17 februarie 2012 19:17:54
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.44 kb
#include <cstdio>

int n;
int a[16];
int b[16];

FILE * f1 = fopen("permutari.in", "rt");
FILE * f2 = fopen("permutari.out", "wt");

void p(int s) {
	if (s == n) {
		for (int i = 0; i < n; ++i) {
			fprintf(f2, "%d ", a[i] + 1);
		}
		fprintf(f2, "\n");
		return;
	}
	for (int i = 0; i < n; ++i) {
		if (!b[i]) {
			a[s] = i;
			b[i] = 1;
			p(s + 1);
			b[i] = 0;
		}
	}
}

int main() {
	fscanf(f1, "%d", &n);
	p(0);
	fclose(f1);
	fclose(f2);
}