Cod sursa(job #154768)

Utilizator mr_nonameAdrian Tandrau mr_noname Data 11 martie 2008 14:09:09
Problema Generare de permutari Scor 80
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include <iostream.h>
#include <stdio.h>

int n, i, j, x[100], k;

int ok (int k)

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

void afis (int n)
{
	for (i=1;i<=n;i++)
		cout<<x[i]<<" ";
	cout<<endl;
}

void permutari (int k)

{
	int i;
	for (i=1;i<=n;i++)
		{
			x[k]=i;
			if (ok(k))
				if (k==n)
					afis(k);
				else permutari(k+1);
		}
}


int main ()

{
	freopen("permutari.in","r",stdin);
	freopen("permutari.out","w",stdout);
        x[0]=0;
	cin>>n;
	permutari(1);

	return 0;
}