Cod sursa(job #189305)
Utilizator | Data | 13 mai 2008 16:11:55 | |
---|---|---|---|
Problema | Generare de permutari | Scor | 0 |
Compilator | c | Status | done |
Runda | Arhiva educationala | Marime | 0.44 kb |
#include<stdio.h>
int s[9],uz[9],n,poz;
FILE *g=fopen("permutari.out","w");
void back (int k)
{
int i;
if (k==n+1)
{
for (i=1;i<=n;++i)
fprintf(g,"%d ",s[i]);
fprintf(g,"\n");
}
else
for (i=1;i<=n;++i)
if (!uz[i])
{
uz[i]=1;
s[++poz]=i;
back(k+1);
uz[i]=0;
poz--;
}
}
int main ()
{
FILE *f=fopen("permutari.in","r");
fscanf(f,"%d",&n);
fclose(f);
back(1);
fclose(g);
return 0;
}