C-小苯的排列构造_北京信息科技大学第十五届程序设计竞赛(同步赛) (nowcoder.com)
凑2很容易想出来,但是2 4 1 3 这个内核不好想,算是一种尝试和经验吧
#include<bits/stdc++.h>
using namespace std;int n;int main()
{cin>>n;if(n<4)cout<<-1<<"\n";else{deque<int>dq;dq.push_back(2),dq.push_back(4),dq.push_back(1),dq.push_back(3);for(int i=5;i<=n;i++){if(i%2)dq.push_front(i);else dq.push_back(i);}for(auto &t:dq)cout<<t<<" ";}
}