Cod sursa(job #399352)

Utilizator cipri_tomCiprian Tomoiaga cipri_tom Data 20 februarie 2010 12:34:40
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include <fstream>
using namespace std;

ifstream fin("permutari.in");
ofstream fout("permutari.out");

int n;
int x[9];
bool f[9];

void Perm(int );
void Write(int );

int main()
{
	fin >> n;
	Perm ( 1 );
	fin.close();
	fout.close();
	return 0;
}

void Perm ( int k )
{
	if ( k > n )
	{
		Write ( k );
		return;
	}
	for ( int i = 1; i <= n; ++i )
	{
		x[k] = i;
		if ( !f[i] )
		{
			f[i] = true;
			Perm ( k + 1 );
			f[i] = false;
		}
	}
}

void Write ( int k )
{
	for ( int i = 1; i < k; ++i )
		fout << x[i] << ' ';
	fout << '\n';
}