Cod sursa(job #2604687)

Utilizator lepoartcevPaltineanu Rares-Mihai lepoartcev Data 23 aprilie 2020 11:51:32
Problema Generare de permutari Scor 80
Compilator c-64 Status done
Runda Arhiva educationala Marime 0.79 kb
#include <stdio.h>
#include <stdlib.h>
#define length 10

int n;
int rez[length], is_on_perm[length];

void afis(FILE* out) {

    for(int i = 1; i <= n; i++)
        fprintf(out, "%d ", rez[i]);

   fprintf(out, "\n");
}

void backTrack(int k, FILE* out) {

    if(k == n)
        afis(out);
    else {
        for(int i = 1; i <= n; i++) {

            if(!is_on_perm[i]) {

                rez[k + 1] = i;
                is_on_perm[i] = 1;
                backTrack(k + 1, out);
                rez[k + 1] = 0;
                is_on_perm[i] = 0;

            }
        }
    }
}

int main() {

    FILE* in = fopen("permutari.in", "r");
    FILE* out = fopen("permutari.out", "w");

    fscanf(in, "%d", &n);

    n %= 8;
    backTrack(0, out);
    return 0;

}