Pagini recente » Cod sursa (job #2228667) | Rating Rautoiu Andrei (rautoiua) | Cod sursa (job #2252260) | Cod sursa (job #282696) | Cod sursa (job #2138381)
# include <stdio.h>
int N;
FILE *fin, *fout;
void printSolution(int solution[]) {
for (int i = 0; i < N; i++)
fprintf(fout, "%d ", solution[i]);
fprintf(fout, "\n");
}
void permutari(bool usedElements[], int solution[], int level) {
if (level == N) {
printSolution(solution);
return;
}
for (int i = 0; i < N; i++) {
if (!usedElements[i]) {
usedElements[i] = true;
solution[level] = i + 1;
permutari(usedElements, solution, level + 1);
usedElements[i] = false;
}
}
return;
}
int main(void) {
fin = fopen("permutari.in", "r");
fout = fopen("permutari.out", "w");
fscanf(fin, "%d", &N);
fclose(fin);
int solution[8];
bool usedElements[8];
for (int i = 0; i < N; i++) {
usedElements[i] = false;
solution[i] = 0;
}
permutari(usedElements, solution, 0);
fclose(fout);
return 0;
}