Cod sursa(job #1975407)
| Utilizator | Data | 30 aprilie 2017 19:02:48 | |
|---|---|---|---|
| Problema | Combinari | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.57 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("combinari.in");
ofstream out("combinari.out");
short N,K;
short v[20];
void backT(short);
int main() {
in>>N>>K;
backT(1);
in.close();out.close();
return 0;
}
void backT(short idx) {
if (idx == K+1) {
for (short i=1;i<=K;++i) {
out<<v[i]<<' ';
}
out<<'\n';
return;
}
short lim = N - (K - idx);
for (short k = v[idx-1] + 1;k <= lim; ++k) {
v[idx] = k;
backT(idx + 1);
}
}
