Cod sursa(job #685601)

Utilizator robertgbrrobertgbr robertgbr Data 21 februarie 2012 00:42:40
Problema Generare de permutari Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.64 kb
#include<iostream> //permutari 1->n
using namespace std;
int k,n,i,sol[100];
void init(int k){
	sol[k]=0;   
}
int test(int k){
	if(sol[k]<n){ return 1;}
	else{return 0;}
}
int valid(int k){
	for(i=1;i<k;i++){
		if(sol[i]==sol[k]){
			return 0;}}
	return 1;
}
int solutie(int k){
	if(k==n){return 1;}
	else{return 0;}
}
void afis(int k){
	for(i=1;i<=n;i++){
		cout<<sol[i]<<" ";}
cout<<'\n';
}
void back(){
	k=1;
	init(k);
	while(k!=0){
		if(test(k)){
			sol[k]++;
			if(valid(k)){
				if(solutie(k)){
					afis(k);}
				else{k++;
				init(k);}
			}
		}
		else{k--;}
	}
}
int main(){
	cin>>n;
	back();
	return 0;
}