#include #include #include using namespace std; void permutacija(vector &perm, vector iskorisceni, int n, int i) { if(i==n) { for(int &x : perm) cout << x << " "; cout << endl; return; } if(i == 0 || perm[i-1]%2==1) { for(int j = 1; j <= n; j++) { if(iskorisceni[j]) continue; perm[i] = j; iskorisceni[j] = true; permutacija(perm, iskorisceni, n, i+1); iskorisceni[j] = false; } } else { for(int j = 1; j <= n; j+=2) { if(iskorisceni[j]) continue; perm[i] = j; iskorisceni[j] = true; permutacija(perm, iskorisceni, n, i+1); iskorisceni[j] = false; } } } int main() { int n; cin >> n; vector a(n); vector iskorisceni(n+1,false); permutacija(a, iskorisceni, n, 0); }