Pagini recente » Cod sursa (job #2290798) | Cod sursa (job #1273048) | Cod sursa (job #3036852) | Cod sursa (job #3174769) | Cod sursa (job #631664)
Cod sursa(job #631664)
#include<stdio.h>
int n,i,st[100],k,ev,as,nr,s;
FILE *f=fopen("permutari.in","r");
FILE *g=fopen("permutari.out","w");
void init()
{
st[k]=0;
}
int succ()
{
if(st[k]<n)
{
st[k]++;
return 1;
}
return 0;
}
int valid()
{
for(int i=1;i<k;i++)
if(st[i]==st[k])
return 0;
return 1;
}
int sol()
{
return k==n;
}
void tipar()
{
for(i=1;i<=k;i++)
fprintf(g,"%d",st[i]);
fprintf(g,"\n");
}
void back()
{
k=1;
init();
while(k>0)
{
do
{
as=succ();
if(as)
ev=valid();
}while(as&&!ev);
if(as)
if(sol())
tipar();
else
{
k++;
init();
}
else
k--;
}
}
int main()
{
fscanf(f,"%d",&n);
if(n<1||n>8)
return 0;
else
back();
return 0;
}