Pagini recente » Cod sursa (job #937719) | Cod sursa (job #2786030) | Cod sursa (job #1485296) | Cod sursa (job #964412) | Cod sursa (job #197015)
Cod sursa(job #197015)
#include <stdio.h>
FILE* fin;
FILE* fout;
int perm[9];
char mask[9];
int n;
void print()
{
int i;
for(i = 0;i<n-1;++i)
{
fprintf(fout, "%d ", perm[i]);
}
fprintf(fout, "%d\n", perm[n-1]);
}
void permutari(int k)
{
int i;
if(k == n)
{
print();
return;
}
for(i=1;i<=n;++i)
{
if(mask[i-1] == 0)
{
perm[k] = i;
mask[i-1] = 1;
permutari(k+1);
mask[i-1] = 0;
}
}
}
int main(void)
{
int i;
fin = fopen("permutari.in", "r");
fout = fopen("permutari.out", "w+");
fscanf(fin, "%d", &n);
for(i=0;i<n;++i)
mask[i] = 0;
permutari(0);
fclose(fin);
fclose(fout);
}