Cod sursa(job #1070004)

Utilizator XeBluePodaru Mihai XeBlue Data 30 decembrie 2013 20:43:12
Problema Generare de permutari Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include <fstream>
using namespace std;
ifstream in("permutari.in");
ofstream out("permutari.out");
int verificare(int k)
{
	for(int i=1;i<k;i++)
		if(v[i]==v[k])
			return 0;
	return 1;
}

void afisare()
{
	for(int i=1;i<=n;i++)
		out << v[i] << " ";
	out << "\n";
}

void backtrack(int k)
{
	for(int i=1;i<=n;i++)
	{	
		v[k]=i;
		if(verificare(k))
		{
			if(k==n)
				afisare();
			else
				backtrack(k+1);
		}
	}
}

int main()
{
	in >> n;
	backtrack(1);
	in.close();
	out.close();
	return 0;
}