Pagini recente » Cod sursa (job #1565882) | Cod sursa (job #626670) | Cod sursa (job #673090) | Cod sursa (job #1058444) | Cod sursa (job #1773141)
#include "fstream"
using namespace std;
ifstream fin("combinari.in");
ofstream fout("combinari.out");
const int NMAX = 19;
bool used[NMAX];
int numbers[NMAX];
int N, K;
//FILE *fout = fopen("combinari.out", "r");
void back(int pos) {
if(pos == K + 1) {
for(int i = 1 ; i <= K ; i++) {
fout << numbers[i];
fout << " ";
}
fout << "\n";
return;
}
for(int i = 1 ; i <= N ; i++) {
if(!used[i] && (pos == 1 || numbers[pos - 1] < i)) {
// fout << "pos: " << pos << ", val: " << i << "\n";
// fout.flush();
used[i] = true;
numbers[pos] = i;
back(pos + 1);
used[i] = false;
}
}
}
int main(void) {
fin >> N >> K;
back(1);
return 0;
}