Pagini recente » Cod sursa (job #111177) | Cod sursa (job #1301160) | Cod sursa (job #1731577) | Cod sursa (job #2059689) | Cod sursa (job #266659)
Cod sursa(job #266659)
#include <stdio.h>
int vect[9], n;
FILE *in, *ou;
int valid(int k)
{
int i;
for(i=1;i<k;i++)
if(vect[k]==vect[i])
return 0;
return 1;
}
void scrie()
{
for(int i=1;i<=n;i++)
fprintf(ou,"%d ", vect[i]);
fprintf(ou,"\n");
}
void gen(int k)
{
int i;
for(i=1;i<=n;i++)
{
vect[k]=i;
if(valid(k))
{
if(k==n)
scrie();
else
gen(k+1);
}
}
}
int main()
{
in=fopen("permutari.in", "r");
ou=fopen("permutari.out","w+");
fscanf(in,"%d",&n);
gen(1);
fclose(in);
fclose(ou);
return 0;
}