Cod sursa(job #462039)

Utilizator voikybodea voichita voiky Data 9 iunie 2010 16:45:52
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include<fstream>
using namespace std;

ifstream f("permutari.in");ofstream g("permutari.out");
int n,x[9],ocupat[9];

void afis()
{
	int i;
	for(i=1;i<=n;i++)g<<x[i]<<' ';
	g<<'\n';
}

int dist(int i)
{
	int j;
	for(j=1;j<i;j++)
		if(x[i]==x[j])return 0;
	return 1;
}

void perm(int i)
{
	int j;
	for(j=1;j<=n;j++)
	{	
		if(!ocupat[j])
		{
			x[i]=j;ocupat[j]=1;
			if(dist(i))
				if(i==n)afis();
				else perm(i+1);
		}
		ocupat[j]=0;
	}	
}

int main()
{
	f>>n;
	perm(1);
	f.close();g.close();
	return 0;
}