Cod sursa(job #2924330)

Utilizator Alex18maiAlex Enache Alex18mai Data 29 septembrie 2022 19:39:54
Problema Combinari Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.76 kb
#include <fstream>
//#include <iostream>
#include <vector>

using namespace std;

//ifstream cin("input"); ofstream cout("output");
ifstream cin("combinari.in"); ofstream cout("combinari.out");

vector < bool > folosit;
vector < int > comb;

void backtracking(int pos, int n, int k){
    if (pos == k+1){
        for (int i=1; i<=k; i++){
            cout<<comb[i]<<" ";
        }
        cout<<'\n';
        return;
    }

    for (int i=comb[pos-1]+1; i<=n; i++){
        if (folosit[i])
            continue;
        folosit[i] = true;
        comb[pos] = i;
        backtracking(pos+1, n, k);
        folosit[i] = false;
    }
}


int main()
{
    int n, k;
    cin>>n>>k;

    folosit.resize(n+1, false);
    comb.resize(k+1, 0);

    backtracking(1, n, k);

    return 0;
}