Cod sursa(job #2450917)

Utilizator uvIanisUrsu Ianis Vlad uvIanis Data 24 august 2019 22:00:22
Problema Generare de permutari Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.64 kb
#include <fstream>

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

unsigned short p[9], N;

void permutari(unsigned short K)
{
    p[K] = 0;

    while(p[K] < N)
    {
        p[K]++;

        bool ok = true;

        for(size_t i = 1; i <= N; i++)
        {
            if(p[K] == p[i] && i != K) ok = false;
        }

        if(ok == false) continue;

        permutari(K - 1);

        if(K == 1)
        {
            for(size_t i = N; i >= 1; i--) fout << p[i] << ' ';
            fout << '\n';
        }
    }

    p[K] = 0;
}

int main()
{
    fin >> N;

    permutari(N);
}