Cod sursa(job #1026056)

Utilizator smallOneAdina Mateescu smallOne Data 10 noiembrie 2013 23:18:13
Problema Combinari Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.86 kb
#include <iostream>
#include <stdio.h>

/* aranjamente vor fi tot asa luate cate k doar ca nu voi merge
de la elementul de dinainte catre n ci de la 1 la n incercand sa le aranjez pe toate*/

// PROGRAM PENTRU CALCULAREA COMBINARILOR DE N LAUTE CATE K
using namespace std;

int n, k, sol[20], freq[20];

void afisareSolutie() {
    int i;
    for(i = 1; i < k; ++i)
        printf("%d ", sol[i]);
    printf("%d\n",sol[i]);
}

void backtrack(int lev) {
    if(lev > k) {
        afisareSolutie();
    } else {
        for(int i = sol[lev - 1] + 1; i <= n; ++i) {
            sol[lev] = i;
            printf("%d\n", sol[lev]);
            backtrack(lev + 1);
        }
    }
}

int main() {
    //freopen("combinari.in", "r", stdin);
    //freopen("combinari.out", "w", stdout);
    scanf("%d %d", &n, &k);
    backtrack(1);
    return 0;
}