Pagini recente » Cod sursa (job #1615556) | Cod sursa (job #1642300) | Cod sursa (job #481761) | Cod sursa (job #89431) | Cod sursa (job #3205542)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("combinari.in");
ofstream fout("combinari.out");
const int MAX_LIMIT = 19;
int n, k, fol[MAX_LIMIT], sir[MAX_LIMIT];
bool verificare(int x, int fol[19]) {
for (int i = x + 1; i <= n; ++i) {
if (fol[i]) {
return 0;
}
}
return 1;
}
void gen(int lg, int sir[MAX_LIMIT]) {
if (lg == k + 1) {
for (int j = 1; j <= k; ++j) {
fout << sir[j] << ' ';
}
fout << "\n";
return;
}
for (int i = 1; i <= n; ++i) {
if(fol[i] == 0 && verificare(i ,fol)) {
sir[lg] = i;
fol[i] = 1;
gen(lg + 1, sir);
fol[i] = 0;
}
}
}
int main() {
fin >> n >> k;
int lg = 1;
gen(lg, sir);
return 0;
}