Pagini recente » Cod sursa (job #930583) | Cod sursa (job #1285625) | Cod sursa (job #245581) | Cod sursa (job #1781055) | Cod sursa (job #186860)
Cod sursa(job #186860)
#include <cstdio>
#include <algorithm>
#include <vector>
using namespace std;
const int K = 18;
const int N = 18;
int n,k;
int x[K];
bool used[N];
void back ( int lvl ) {
for (x[lvl] = (lvl == 0) ? 1 : x[lvl-1]+1; x[lvl] <= n; ++x[lvl]) {
if (!used[x[lvl]]) {
used[x[lvl]] = true;
if (lvl < k-1) {
back(lvl+1);
} else {
for (int i = 0; i < k; ++i) printf("%d ",x[i]);
printf("\n");
}
used[x[lvl]] = false;
}
}
}
int main() {
freopen("combinari.in","rt",stdin);
freopen("combinari.out","wt",stdout);
scanf("%d %d",&n,&k);
back(0);
return 0;
}