Cod sursa(job #642270)
| Utilizator | Data | 30 noiembrie 2011 20:11:38 | |
|---|---|---|---|
| Problema | Generare de permutari | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.44 kb |
#include<stdio.h>
FILE*f=fopen("permutari.in","r");
FILE*g=fopen("permutari.out","w");
int a[9],b[9],n;
void back (int k,int len){
if(k-1==len){
for(int i=1;i<=len;i++)
fprintf(g,"%d ",a[i]);
fprintf(g,"\n");
}
else{
for(int i=1;i<=len;i++){
if(b[i]==0){
a[k]=i;
b[i]=1;
back(k+1,len);
b[i]=0;
}
}
}
}
int main (){
fscanf(f,"%d",&n);
back(1,n);
fclose(g);
fclose(f);
return 0;
}
