Cod sursa(job #809861)

Utilizator mircea.dobreanuMircea Dobreanu mircea.dobreanu Data 9 noiembrie 2012 10:01:13
Problema Generare de permutari Scor 20
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include <fstream>
using namespace std;

ifstream fin("permutari.in");
ofstream fout("permutari.out");
int n,v[20];
void afis();
void swap(int &a,int &b);
void bkt(int k);

int main()
{
	fin>>n;
	for (int i=0;i<n;i++)
		v[i]=i+1;
	bkt(0);
	return 0;
}
void afis()
{
	for (int i=0;i<n;i++)
		fout<<v[i];
	fout<<'\n';
}
void swap(int &a,int &b)
{
	int aux=a;
	a=b;
	b=aux;
} 
void bkt(int k)
{
	if (k==n-1)
		afis();
	else
	{
		for (int i=k;i<n;i++)
		{
			swap(v[i],v[k]);
			bkt(k+1);
			swap(v[i],v[k]);
		}
	}
}