Cod sursa(job #251182)

Utilizator razyelxrazyelx razyelx Data 2 februarie 2009 00:57:04
Problema Generare de permutari Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include <fstream.h>
ifstream fin("permutari.in");
ofstream fout("permutari.out");
int n,st[30],as,ev;

void init(k){
     st[k] = 0;
}
int succ(int k){
    if(st[k]<n){st[k]++;return 1;}
    return 0;
}
int valid(int k){
    for(int i=1;i<k;i++)
       if(st[k]==st[i])return 0;
    return 1;
}
int sol(int k){
    return k==n;
}
void tipar(){
     for(int i=1;i<=n;i++)
	fout<<st[i]<<" ";
     fout<<"\n";
}
void back(int k){
     init(k);
     while(succ(k))
	  if(valid(k))
	    if(sol(k))tipar();
	    else back(k+1);
}
int main(){
    fin>>n;
    back(1);
    return 0;
}