Cod sursa(job #3341218)

Utilizator Sabin1133Padurariu Sabin Sabin1133 Data 18 februarie 2026 15:48:30
Problema Combinari Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.71 kb
#include <iostream>

#define NMAX 18

void combination(int *comb, int i, int k, int n)
{
    if (i == 0) {
        for (int m = 0; m < n; ++m) {
            comb[i] = m + 1;

            combination(comb, i + 1, k, n);
        }
    } else if (i < k) {
        for (int m = comb[i - 1]; m < n; ++m) {
            comb[i] = m + 1;

            combination(comb, i + 1, k, n);
            }
    } else {
        for (int j = 0; j < k; ++j)
            std::cout << comb[j] << ' ';
        std::cout << '\n';
    }
}

int main()
{
    int k, n;
    int comb[NMAX];

    freopen("combinari.in", "r", stdin);
    freopen("combinari.out", "w", stdout);

    std::cin >> n >> k;

    combination(comb, 0, k, n);

    return 0;
}