Pagini recente » Cod sursa (job #214965) | Cod sursa (job #241931) | Cod sursa (job #652548) | Cod sursa (job #1683235) | Cod sursa (job #797828)
Cod sursa(job #797828)
#include <iostream>
#include <fstream>
#include <vector>
std::ifstream input("permutari.in");
std::ofstream output("permutari.out");
void backtrack(std::vector<int>& current, unsigned int max) {
if (current.size() >= max) {
for (unsigned int i = 0; i < current.size(); i++) {
output << current[i] << " ";
}
output << "\n";
return;
}
for (unsigned int i = 1; i <= max; i++) {
bool found = false;
for (unsigned int j = 0; j < current.size(); j++) {
if (current[j] == i) {
found = true;
break;
}
}
if (found)
continue;
current.push_back(i);
backtrack(current, max);
current.pop_back();
}
}
int main() {
unsigned int n;
std::vector<int> base;
input >> n;
backtrack(base, n);
return 0;
}