Cod sursa(job #486341)

Utilizator chrisuPirvu Cristina chrisu Data 21 septembrie 2010 10:23:00
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.5 kb
#include <stdio.h>
int n, sol [10];
void afisare ()
{
	for( int i=1;i<=n; i++)
		printf("%d ", sol [i]);
	printf("\n");
}
bool valid (int p)
{
	for( int i=1;i<p;++i)
		if (sol[i]==sol[p])
			return false;
	return true;
}

void bkt(int p)
{
	if(p==n+1)
	{
		afisare();
		return;
	}
	for(int i=1;i<=n;i++)
	{
		sol[p]=i;
		if(valid(p))
			bkt(p+1);
	}
}
int main ()
{
	freopen("permutari.in","r",stdin);
	freopen("permutari.out","w",stdout);
	scanf("%d",&n);
	bkt(1);
	return 0;
}