Cod sursa(job #559013)

Utilizator TodeaDariustodea darius TodeaDarius Data 17 martie 2011 16:05:08
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include<fstream>
using namespace std;
ifstream f("permutari.in");
ofstream g("permutari.out");
int v[30],n,k;
void scrie(int k)
{
	int i;
	for(i=1;i<=n;i++)
	{
		g<<v[i]<<" ";
	}
	g<<'\n';
	
}
bool corect(int k)
{
	int i;
	for(i=1;i<k;i++)
	{
		if(v[k]==v[i])
		{
			return false;
		}
	}
	return true;
}
int main()
{
	f>>n;
	k=1;
	v[k]=0;
	while(k!=0)
	{
		if(v[k]<n)
		{
			v[k]++;
			if(corect(k))
			{
				if(k==n)
				{
					scrie(n);
				}
				else
				{
					k++;
					v[k]=0;
				}
			}
		}
		else
		{
			k--;
		}
	}
	return 0;
}