Cod sursa(job #626720)

Utilizator Aleks10FMI - Petrache Alex Aleks10 Data 28 octombrie 2011 00:10:38
Problema Generare de permutari Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include <iostream.h>
#include <fstream.h>
int x[20],n;
void afisare(){ofstream g("permutari.out");
	int i;
	for (i=1;i<=n;i++)
		printf("%d ",x[i]);
         printf("\n");
}

int cont(int k) {
	int i;
	for (i=1;i<=k-1;i++)
		if (x[k]==x[i]) return 0;
	return 1;
}

void back(int k) {
	int i;
	if (k==n+1)
		afisare();
	else
		for (i=1;i<=n;i++){
			x[k]=i;
			if (cont(k))
				back(k+1);
		}
}

int main()
{
    freopen("permutari.in","r",stdin);
    freopen("permutari.out","w",stdout);
	scanf("%d",&n);
	back(1);
	fclose(stdin); fclose(stdout);
}