Cod sursa(job #2664461)

Utilizator masterXbotmasterX masterX Data 28 octombrie 2020 18:01:36
Problema Generare de permutari Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.82 kb
#include <iostream>
#include <fstream>
using namespace std;

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

int n;
int permutari[10];

void afisare()
{
    for (int i = 1; i <= n; ++i)
        fout << permutari[i] << " ";
    fout << "\n";
}


bool solutia(int k)
{
    if(k == n)
        return true;
    return false;
}

bool verificare(int k)
{
    for(int i = 1; i < k; ++i)
        if(permutari[i] == permutari[k])
            return false;
    return true;
}

void backtracking(int pasii)
{
    for (int i = 1; i <= n; ++i)
    {
        permutari[pasii] = i;
        if(verificare(pasii))
            if(solutia(pasii))
                afisare();
            else
                backtracking(pasii + 1);
    }

}


int main()
{
    fin >> n;
    backtracking(1);
}