Cod sursa(job #786159)
Utilizator | Data | 10 septembrie 2012 16:29:30 | |
---|---|---|---|
Problema | Combinari | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.51 kb |
#include <iostream>
#include <fstream>
#define _MAX_N 20
std::ifstream f("combinari.in");
std::ofstream g("combinari.out");
int n, k;
int sol[_MAX_N];
void print_solution()
{
for (int i = 1; i <= k; i ++) {
g << sol[i] << ' ';
}
g << '\n';
}
void bkt(int pos)
{
if (pos == k + 1) {
print_solution();
return;
}
for (int i = sol[pos - 1] + 1; i <= n; i ++) {
sol[pos] = i;
bkt(pos + 1);
}
}
int main()
{
f >> n >> k;
bkt(1);
return 0;
}