Cod sursa(job #419323)
| Utilizator | Data | 17 martie 2010 12:04:54 | |
|---|---|---|---|
| Problema | Generare de permutari | Scor | 80 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.49 kb |
#include <stdio.h>
FILE *f1 = fopen("permutari.in","r");
FILE *f2 = fopen("permutari.out","w");
int n;
int v[8];
char viz[8];
void back(int k){
int i;
if(k == n + 1){
for(i=1; i<=n; i++)
fprintf(f2,"%d ",v[i]);
fprintf(f2,"\n");
return;
}
for(i=1; i<=n; i++)
if (viz[i] == 0) {
v[k] = i;
viz[i] = 1;
back(k+1);
viz[i] = 0;
}
}
int main(){
fscanf(f1,"%d",&n);
back(1);
fclose(f1);
fclose(f2);
return 0;
}
