Cod sursa(job #2665621)

Utilizator masterXbotmasterX masterX Data 31 octombrie 2020 10:16:13
Problema Submultimi Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.57 kb
#include <iostream>
using namespace std;

bool valid[20];
int valori[20];
int n;

void backtracking(int pasi,int pozitie)
{
    if(pozitie > 1)
    {
        for (int i = 1; i < pozitie; ++i)
            cout << valori[i] << " ";
        cout << "\n";
    }

    for (int i = pozitie; i <= n; ++i)
    {
        if(!valid[i])
        {
            valid[i] = true;
            valori[pozitie] = i;
            backtracking(pasi + 1, pozitie + 1);
            valid[i] = false;
        }
    }
}

int main()
{
    cin >> n;
    backtracking(1,1);
}