Pagini recente » Cod sursa (job #1835907) | Cod sursa (job #1979237) | Cod sursa (job #1534567) | Cod sursa (job #3284012) | Cod sursa (job #217760)
Cod sursa(job #217760)
#include<iostream.h>
int st[9];
int n,k,ev,as;
inline void init (){
st[k]=0;
}
inline int succesor (){
if (st[k]<n){
st[k]++;
return 1;
}
return 0;
}
int valid (){
int i;
for(i=1;i<=k-1;++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;
}