Cod sursa(job #1017145)
Utilizator | Data | 27 octombrie 2013 12:42:21 | |
---|---|---|---|
Problema | Generare de permutari | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.63 kb |
#include <cstdio>
using namespace std;
int n, v[8], b[8];
void back(int k) {
int i;
if (k == n) {
for (i = 0; i < n; ++i)
printf("%d ", v[i]+1);
printf("\n");
} else {
for (i = 0; i < n; ++i) {
if (b[i]) {
b[i] = 0;
v[k] = i;
back(k+1);
b[i] = 1;
}
}
}
}
int main() {
freopen("permutari.in", "r", stdin);
freopen("permutari.out", "w", stdout);
scanf("%d", &n);
for (int i = 0; i < n; ++i)
b[i] = 1;
back(0);
return 0;
}