题解 | #操作序列#
操作序列
http://www.nowcoder.com/practice/0050126828c447669f927aeae469ca44
双端队列,轮流插入。
#include <iostream>
#include <cstdio>
#include <algorithm>
#include <vector>
#include <deque>
using namespace std;
int main()
{
int n,i,t;
vector<int> a;
deque<int> b;
while(cin>>n)
{
b.clear();
a.clear();
for(i=0;i<n;i++)
{
cin>>t;
a.push_back(t);
}
for(i=0;i<n;i++)
{
if(i%2==0)
{
b.push_back(a[i]);
}
else
{
b.push_front(a[i]);
}
}
if((n-1)%2==0)
{
for(deque<int>::reverse_iterator it=b.rbegin();it!=b.rend();it++)
cout<<*it<<' ';
}
else
{
for(deque<int>::iterator it=b.begin();it!=b.end();it++)
cout<<*it<<' ';
}
cout<<endl;
}
return 0;
}