Pagini recente » Cod sursa (job #704662) | Cod sursa (job #1080023) | Cod sursa (job #1072101) | Cod sursa (job #254371) | Cod sursa (job #1096623)
#include<stdio.h>
FILE *in,*out;
//functii
void back(int k);
bool valid(int k);
void tipar();
//variabile
int n;
int stiva[9];
int main()
{
in=fopen("permutari.in","rt");
out=fopen("permutari.out","wt");
fscanf(in,"%d",&n);
back(1);
fclose(in);
fclose(out);
return 0;
}
void back(int k)
{
for(int i=1; i<=n; ++i)
{
stiva[k]=i;
if(valid(k))
if(k==n)
tipar();
else
back(k+1);
}
}
bool valid(int k)
{
for(int i=1; i<k; ++i)
if(stiva[i]==stiva[k])
return false;
return true;
}
void tipar()
{
for(int i=1; i<=n; ++i)
fprintf(out,"%d ",stiva[i]);
fprintf(out,"\n");
}