#include #include using namespace std; void generisi(vector &perm, const int n, int i, vector &iskorisceni) { if(i == n) { for(int it = 0; it < n; it++) { cout << perm[it] << " "; } cout << endl; return; } for(int el = 1; el <= n; el++) { if(iskorisceni[el]) continue; if(i > 0) { int poslednji = perm[i-1]; if(poslednji % 2 == 0 && el % 2 == 0) { // dva uzastopna parna broja continue; } } iskorisceni[el] = true; perm[i] = el; generisi(perm, n, i+1, iskorisceni); iskorisceni[el] = false; } } void generisi(int n) { vector permutacija(n); vector iskorisceni(10, false); generisi(permutacija, n, 0, iskorisceni); } int main() { int n; cin >> n; generisi(n); return 0; }