Cod sursa(job #269917)
| Utilizator | Data | 3 martie 2009 16:18:45 | |
|---|---|---|---|
| Problema | Generare de permutari | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.45 kb |
#include<stdio.h>
int N,V[9],H[9];
void back(int nivel)
{
int i;
if (nivel==N+1)
{
for (i=1;i<=N;++i) printf("%d ",V[i]);
printf("\n");
}
for (i=1;i<=N;++i)
{
if (H[i]==1) continue;
H[i]=1; V[nivel]=i;
back(nivel+1);
H[i]=0;
}
}
int main()
{
freopen("permutari.in","r",stdin);
freopen("permutari.out","w",stdout);
scanf("%d",&N);
back(1);
}
