Pagini recente » Cod sursa (job #1151952) | Cod sursa (job #359662) | Cod sursa (job #2555367) | Cod sursa (job #974221) | Cod sursa (job #2417235)
#include <stdio.h>
#include <bits/stdc++.h>
#define rep(i, n) for(int i = 0; i < n; i++)
#define REP(i,a,b) for(int i = a; i < b; i++)
using namespace std;
typedef pair<int, int> pii;
const int INF = 0x3f3f3f3f;
ifstream fin ("combinari.in");
ofstream fout ("combinari.out");
const int Nmax = 22;
int N, K;
char used[Nmax];
void write() {
for(int i = 1; i <= N; ++i)
if (used[i])
fout << i << ' ';
fout << '\n';
}
void combinari(int begin, int end, int count) {
if (!count) {
write();
return;
}
if (begin + count > end) {
return;
}
// use begin
used[begin] = 1;
combinari(begin+1, end, count-1);
// skip begin
used[begin] = 0;
combinari(begin+1, end, count);
}
int main(void) {
fin >> N >> K;
combinari(1, N+1, K);
return 0;
}