Pagini recente » Cod sursa (job #1104396) | Cod sursa (job #2617170) | 26_februarie_simulare_oji_2024_clasa_10 | Cod sursa (job #2683928) | Cod sursa (job #1989814)
#include <iostream>
#include <fstream>
#include <vector>
void perm(int nV, std::vector<int> &vals, std::vector<bool> &check, std::ostream &out) {
if (nV == int(vals.size())) {
for (int i(0); i <= nV; i++) {
out << vals[i] << ' ';
}
out << std::endl;
return;
}
for (int i(1); i <= nV; i++) {
if (check[i]) continue;
check[i] = true;
vals.push_back(i);
perm(nV, vals, check, out);
vals.pop_back();
check[i] = false;
}
}
int main() {
std::ifstream in("permutari.in");
std::ofstream out("permutari.out");
int nV;
in >> nV;
std::vector<bool> check(nV + 1, false);
std::vector<int> vals;
perm(nV, vals, check, out);
in.close();
out.close();
return 0;
}