Pagini recente » Monitorul de evaluare | Cod sursa (job #486874) | Cod sursa (job #240768) | Cod sursa (job #3335115) | Cod sursa (job #3355112)
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
vector<bool> visited(100, false);
ifstream f("permutari.in");
ofstream g("permutari.out");
void back(vector<int>& v, vector<int>& result) {
if (result.size() == v.size()) {
for (int i = 0; i < v.size(); i++)
g << result[i] <<" ";
g << '\n';
return;
}
for (int i = 0; i < v.size(); i++) {
if (visited[v[i]] == false){
visited[v[i]] = true;
result.push_back(v[i]);
back(v, result);
result.pop_back();
visited[v[i]] = false;
}
}
}
int main() {
int n;
f >> n;
vector<int> v;
vector<int> result;
for (int i = 1; i <= n; i++)
v.push_back(i);
back(v, result);
return 0;
}