Cod sursa(job #1483762)

Utilizator mike93Indricean Mihai mike93 Data 9 septembrie 2015 21:30:27
Problema Generare de permutari Scor 100
Compilator c Status done
Runda Arhiva educationala Marime 0.62 kb
#include <stdio.h>

int tab[10];
int used[10];
int n;
FILE* fout;

void print() {
	int i;
	for(i=0; i<n-1; i++) {
		fprintf(fout, "%d ", tab[i]);
	}
	fprintf(fout, "%d\n", tab[n-1]);
}

void combinari(int pos) {
	if(pos == n) {
		print();
		return;
	}
	
	int i;
	for(i=1; i<=n; i++) {
		if(used[i] == 0) {
			tab[pos] = i;
			used[i] = 1;
			combinari(pos + 1);
			used[i] = 0;
		}
	}
	tab[pos] = 0;
	return;
}

int main() {
	FILE* fin = fopen("permutari.in", "r");
	fscanf(fin, "%d\n", &n);
	fclose(fin);
	
	fout = fopen("permutari.out", "w");
	combinari(0);
	
	fclose(fout);
	return 0;
}