Pagini recente » Cod sursa (job #438887) | Cod sursa (job #2518416) | Cod sursa (job #2494742) | Cod sursa (job #2351978) | Cod sursa (job #2759119)
#include <fstream>
using namespace std;
ifstream fin("combinari.in");
ofstream fout("combinari.out");
short 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(short current_value, short pos) {
if (pos == k + 1) {
for (short i = 1; i <= k; ++i) {
fout << combinations[i] << ' ';
}
fout << '\n';
}
for (short i = current_value + 1; i <= n; ++i) {
combinations[pos] = i;
generate_combinations(combinations[pos], pos + 1);
}
}
int main() {
fin >> n >> k;
generate_combinations(0, 1);
return 0;
}