Cod sursa(job #268123)

Utilizator marcel9105Marcel Grec marcel9105 Data 28 februarie 2009 20:21:11
Problema Generare de permutari Scor 80
Compilator cpp Status done
Runda Arhiva educationala Marime 0.67 kb
#include<fstream>
using namespace std;

ifstream fi ( "permutari.in" );
ofstream fo ( "permutari.out" );

int st[9], n, k, i, as, ev;

int main()
{
	fi >> n;
	k = 1;
	
	while( k > 0 )
	{
		do
		{
			if( st[k] < n )
			{
				st[k]++;
				as = 1;
			}
			else 
				as = 0;
			
			if( as )
			{
				ev = 1; 
				for( i = 1; i < k; i++ )
					if( st[k] == st[i] )
					{
						ev = 0;
						break;
					}
			}
			
		}while( as && !ev);
		
		if( as )
			if( k == n )
			{
				for( i = 1; i <= k; i++ )
					fo << st[i] << ' ';
				fo << endl;
			}
			else
			{
				k++;
				st[k] = 0;
			}
		else 
			k--;
		
	}
	fo.close();
	return 0;
}