Cod sursa(job #445323)

Utilizator atiykaSzasz Attila atiyka Data 23 aprilie 2010 15:23:36
Problema Generare de permutari Scor 80
Compilator cpp Status done
Runda Arhiva educationala Marime 0.5 kb
#include <iostream>

using namespace std;
int main(void) {
	freopen("permutari.in","r",stdin);
	freopen("permutari.out","w",stdout);
	int k,n,i;
	bool jo;
	cin >> n;
	int v[n];
	k=0;
	v[k]=0;
	while (k>-1) {
		do {
			v[k]++;
			jo=true;
			for (i=0;i<k;i++)
				if (v[i]==v[k]) jo=false;
		}while (!(jo || v[k]==n+1));
		if (jo && v[k]<=n) {
			if (k==n-1) {
				for (i=0;i<n;i++)
					cout << v[i] << " ";
				cout << endl;
			}else{
				k++;
				v[k]=0;
			}
		}else k--;
	}
}