Cod sursa(job #146453)
Utilizator | Data | 1 martie 2008 18:51:30 | |
---|---|---|---|
Problema | Generare de permutari | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.39 kb |
#include <cstdio>
long n;
long St[10], O[10];
void back(long h) {
if ( h==n ) {
for (long i=0; i<n; ++i)
printf("%ld ", St[i]);
printf("\n");
return ;
}
for (St[h]=1; St[h]<=n; ++St[h])
if ( ! O[St[h]] ) {
O[St[h]] = 1;
back(h+1);
O[St[h]] = 0;
}
}
int main() {
fscanf(fopen("permutari.in", "r"), "%ld", &n);
freopen("permutari.out", "w", stdout);
back(0);
return 0;
}