Cod sursa(job #2316334)

Utilizator AlexGAlexandru Gheorghe AlexG Data 11 ianuarie 2019 16:32:16
Problema Generare de permutari Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.68 kb
#include <fstream>

using namespace std;

int stiva[19], n;
ofstream fout("permutari.out");
void afiseaza()
{
    for(int i=1; i<=n; ++i)
        fout << stiva[i] << ' ';
    fout << '\n';
}

bool esteValida(int j)
{
    for(int i=1; i<j; ++i)
        if(stiva[i] == stiva[j])
            return false;
    return true;
}

void backtrack(int j)
{
    for(int i=1; i<=n; ++i)
    {
        stiva[j] = i;
        if(esteValida(j))
        {
            if(j==n)
                afiseaza();
            else
                backtrack(j+1);
        }
    }
}

int main()
{
    ifstream fin("permutari.in");
    fin >> n;
    backtrack(1);
    return 0;
}