Pagini recente » Cod sursa (job #694912) | Cod sursa (job #1915193) | Cod sursa (job #863082) | Cod sursa (job #1335399) | Cod sursa (job #385085)
Cod sursa(job #385085)
#include <stdio.h>
FILE *f = fopen("permutari.in","r");
FILE *g = fopen("permutari.out","w");
int n,T;
int x[20];
int v[20];
void sol(){
T++;
for (int i=1;i<=n;i++)
fprintf(g,"%d ",x[i]);
fprintf(g,"\n");
}
int cont(int k) {
if (k==n)
return 1;
int i,ok;
ok = 0;
for (i=1;i<=k;i++) {
if (v[i] == 0)
ok = 1;
}
return ok;
}
void back(int k) {
if (k==n+1)
sol();
else
for (int i=1;i<=n;i++)
if (v[i]==0) {
x[k]=i;
v[i]=1;
if (cont(k))
back(k+1);
v[i]=0;
}
}
int main(){
fscanf(f,"%d",&n);
fclose(f);
back(1);
fclose(g);
printf("%d",T);
}