Cod sursa(job #910551)
Utilizator | Data | 10 martie 2013 20:50:32 | |
---|---|---|---|
Problema | Combinari | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.48 kb |
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("combinari.in");
ofstream fout("combinari.out");
int N, K;
vector<int> c;
void comb(int step);
int main() {
fin >> N >> K;
c.push_back(0);
comb(0);
return 0;
}
void comb(int step) {
if (step == K) {
for (int i = 1; i <= K; ++i) {
fout << c[i] << ' ';
}
fout << '\n';
return;
}
for (int i = c[step] + 1; i <= N; ++i) {
c.push_back(i);
comb(step + 1);
c.pop_back();
}
}