Pagini recente » Cod sursa (job #1123898) | Cod sursa (job #2812832) | Cod sursa (job #2492310) | Cod sursa (job #2289427) | Cod sursa (job #217755)
Cod sursa(job #217755)
#include<iostream.h>
#include <math.h>
int st[10];
int n,k,ev,as;
inline void init (){
st[k]=0;
}
inline int succesor (){
if (st[k]<n){
st[k]=st[k]+1;
return 1;
}
else return 0;
}
int valid (){
int i;
for(i=1;i<k;i++)
if (st[k]==st[i]) return 0;
return 1;
}
inline int solutie(){
return k==n;
}
void tipar (){
int i;
for(i=1;i<=n;i++)
cout<<st[i]<<" ";
cout<<endl;
}
void bt(){
int as;
k=1;
init();
while(k>0){
do{}while((as=succesor())&&!valid());
if(as)
if(solutie())
tipar();
else{
k++;
init();
}
else k--;
}
}
int main(){
freopen("permutari.in","r",stdin);
freopen("permutari.out","w",stdout);
cin>>n;
bt();
return 0;
}