Cod sursa(job #312518)
Utilizator | Florea Mihai Alexandru mihai_florea | Data | 6 mai 2009 11:39:55 |
---|---|---|---|
Problema | Generare de permutari | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.51 kb |
#include <cstdio>
int N,x[16];
bool u[16];
void back(int level){
int i;
if (level==N+1)
{
for (i=1;i<=N;++i) printf("%d ",x[i]);
printf("\n");
}
else
for (i=1;i<=N;++i)
if (!u[i])
{
u[i]=true;
x[level]=i;
back(level+1);
u[i]=false;
}
}
int main(){
freopen("permutari.in","r",stdin);
freopen("permutari.out","w",stdout);
scanf("%d",&N);
back(1);
return 0;
}