Pagini recente » Cod sursa (job #3284662) | Cod sursa (job #3216793) | Cod sursa (job #3263888) | Clasamentul arhivei educationale | Cod sursa (job #145601)
Cod sursa(job #145601)
//generare prin back
# include <stdio.h>
int st[1000],ap[1000];
int N;
FILE *f=fopen("permutari.in","r"),*g=fopen("permutari.out","w");
void back(int k)
{
int i,j;
if (k==N+1){
for (j=1;j<=N;j++)
fprintf(g,"%d ",st[j]);
fprintf(g,"\n");
}
else {
for (i=1;i<=N;i++)
{
st[k]=i;
if (ap[st[k]] == 0) {
ap[st[k]]=1;
back(++k);
ap[st[--k]]=0;
}
}
}
}
int main()
{
fscanf(f,"%d",&N);
fclose(f);
back(1);
fclose(g);
return 0;
}