Cod sursa(job #2683092)
Utilizator | Data | 10 decembrie 2020 14:38:56 | |
---|---|---|---|
Problema | Combinari | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.61 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("combinari.in");
ofstream fout("combinari.out");
int N, fol[19], k, sir[19];
void gen(int lg, int sir[19]) {
if (lg == k + 1) {
for (int i = 1; i <= k; ++i) {
fout << sir[i] << " ";
}
fout << "\n";
return;
}
for (int c = 1; c <= N; ++c) {
if (fol[c] == 0 && c > sir[lg - 1]) {
sir[lg] = c;
fol[c] = 1;
gen(lg + 1, sir);
fol[c] = 0;
}
}
}
int main () {
fin >> N >> k;
gen(1, sir);
}