Pagini recente » Cod sursa (job #1074420) | Cod sursa (job #733412) | Cod sursa (job #1869699) | Cod sursa (job #722026) | Cod sursa (job #158702)
Cod sursa(job #158702)
#include <stdio.h>
int n,x[10];
void init(int k)
{
x[k]=0;
}
int succ(int k)
{
if (x[k]<n)
{
x[k]++;
return 1;
}
else return 0;
}
int valid(int k)
{
int i,p=1;
for (i=1;i<=k-1;i++)
if (x[k]==x[i]) p=0;
return p;
}
int sol(int k)
{
return k==n+1;
}
void afis()
{
int i;
for (i=1;i<=n;i++)
printf("%d ",x[i]);
printf("\n");
}
void back(int k)
{
if (sol(k)) afis();
else
{
init(k);
while (succ(k))
if (valid(k)) back(k+1);
}
}
int main()
{
freopen("permutari.in","r",stdin);
freopen("permutari.out","w",stdout);
scanf("%d",&n);
back(1);
return 0;
}