Pagini recente » Cod sursa (job #70027) | Cod sursa (job #2526941) | Diferente pentru implica-te/arhiva-educationala intre reviziile 167 si 168 | Cod sursa (job #1317580) | Cod sursa (job #275491)
Cod sursa(job #275491)
#include <stdio.h>
int n;
int v[100],k[100];
FILE *in, *out;
void afis()
{
int i;
for(i=1; i<=n; i++) {
fprintf(out,"%d",v[i]);
}
fprintf(out,"\n");
}
void backtr (int x) {
int i;
for (i=1; i<=n; i++) {
if(k[i]==0){
v[x] = i;
k[i] = 1;
if (x==n) {
afis();
} else {
backtr(x+1);
}
k[i] = 0;
}
}
}
int main () {
in = fopen("permut.in", "r");
out = fopen("permut.out", "w");
fscanf(in, "%d", &n);
backtr(1);
fclose(in);
fclose(out);
return 0;
}