Pagini recente » Cod sursa (job #134574) | Cod sursa (job #1569925) | Cod sursa (job #555640) | Cod sursa (job #2775448) | Cod sursa (job #1196799)
#include<stdio.h>
#include<stdlib.h>
int st[10],n,k;
void Init()
{ st[k]=0; }
int Am_Succesor() {
if(st[k]<n) {
st[k]++;
return 1;
}
return 0;
}
int E_valid(){
for(int i=1;i<k;i++)
if(st[i]==st[k]) return 0;
return 1;
}
int Solutie()
{ return k==n; }
void Tipar() {
for( int i=1;i<=n;i++)
printf("%d ",st[i]);
printf("\n");
}
void back(){
int AS;
k=1;Init();
while(k>0){
do {} while((AS=Am_Succesor()) && !E_valid());
if (AS)
if(Solutie()) Tipar();
else { k++;Init(); }
else k--;
}
}
int main() {
freopen("permutari.in","r",stdin);
freopen("permutari.out","w",stdout);
scanf("%d",&n);
back();
fclose(stdin);
fclose(stdout);
return 0;
}