Pagini recente » Cod sursa (job #1898218) | Cod sursa (job #2765756) | Cod sursa (job #2884178) | Cod sursa (job #927232) | Cod sursa (job #2379210)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("combinari.in");
ofstream out("combinari.out");
int N,K, st[20];
void afis() {
for(int i=1; i<=K; i++)
out<<st[i]<<" ";
out<<'\n';
}
bool ok(int p) {
if(p==1)
return 1;
if(st[p]>st[p-1])
return 1;
return 0;
}
void backtrack(int p) {
for(int i=1; i<=N; i++){
st[p]=i;
if(ok(p)) {
if(p==K)
afis();
else
backtrack(p+1);
}
st[p]=0;}
}
int main() {
in>>N>>K;
backtrack(1);
return 0;
}