Cod sursa(job #2883876)

Utilizator BarbuDragosBarbu Dragos BarbuDragos Data 1 aprilie 2022 22:17:46
Problema Combinari Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.76 kb
#include <bits/stdc++.h>
using namespace std;

void read_input(int &n, int &k) {
    ifstream in("combinari.in");
    in >> n >> k;
    in.close();
    return;
}

void solve(int n, int k, vector<int> res, ofstream &out) {
    if (res.size() == k) {
        for(int i = 0; i < res.size(); i++) {
            out << res[i] << ' ';
        }
        out << '\n';
        return;
    }

    int min_add;
    if (res.size())
        min_add = res.back() + 1;
    else
        min_add = 1;

    for (int i = min_add; i <= n; i++) {
        res.push_back(i);
        solve(n, k, res, out);
        res.pop_back();
    }
}

int main() {
    int n, k;
    ofstream out("combinari.out");
    vector<int> res;

    read_input(n, k);
    solve(n, k, res, out);

    out.close();
    return 0;
}