Pagini recente » Cod sursa (job #2233465) | Cod sursa (job #2203601) | Cod sursa (job #3345889) | Borderou de evaluare (job #2156425) | Cod sursa (job #3354469)
#include <bits/stdc++.h>
using namespace std;
ifstream f("permutari.in");
ofstream g("permutari.out");
int n;
void print(vector<int> &sol) {
for (auto u : sol) {
g << u << ' ';
}
g << '\n';
}
void bk(int step, vector<int> &sol, vector<bool> &vz) {
if (step == n) {
print(sol);
return;
}
for (int i = 1; i <= n; i++) {
if (vz[i]) continue;
sol[step] = i;
vz[i] = true;
bk(step + 1, sol, vz);
vz[i] = false;
}
}
int main() {
f >> n;
vector<int> sol(n);
vector<bool> vz(n + 1, false);
bk(0, sol, vz);
}