Cod sursa(job #2756670)

Utilizator george_buzasGeorge Buzas george_buzas Data 2 iunie 2021 11:55:23
Problema Combinari Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.67 kb
#include <fstream>
using namespace std;

ifstream fin("combinari.in");
ofstream fout("combinari.out");

int n, k, combinations[19];

// current value will be increased at each recursive call, so it ensures that all the combinations will be printed in increasing order
void generate_combinations(int current_value, int pos) {
	if (pos == k + 1) {
		for (int i = 1; i <= k; ++i) {
			fout << combinations[i] << ' ';
		}
		fout << '\n';
	}
	for (int i = 1; i + current_value <= n; ++i) {
		combinations[pos] = i + current_value;
		generate_combinations(combinations[pos], pos + 1);
	}
}

int main() {
	fin >> n >> k;
	generate_combinations(0, 1);
	return 0;
}