Cod sursa(job #3219064)

Utilizator DobraVictorDobra Victor Ioan DobraVictor Data 29 martie 2024 20:41:48
Problema Generare de permutari Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.75 kb
#include <iostream>
#include <fstream>
#include <stdint.h>

const int32_t MAX_N = 8;

int32_t n;
bool used[MAX_N];
int32_t vec[MAX_N];

void Perm(int32_t ind, std::ostream& out) {
    if(ind == n) {
        for(int32_t i = 0; i != n; ++i)
            out << vec[i] << ' ';
        out << '\n';
    } else {
        for(int32_t i = 0; i != n; ++i) {
            if(used[i])
                continue;
            
            used[i] = true;
            vec[ind] = i + 1;
            Perm(ind + 1, out);
            used[i] = false;
        }
    }
}

int main() {
    std::ifstream fin("permutari.in");
    std::ofstream fout("permutari.out");

    fin >> n;
    Perm(0, fout);

    fin.close();
    fout.close();

    return 0;
}