1 条题解

  • 1
    @ 2017-11-06 21:05:05

    这道题其实可以用一个双向队列来维护,STL中有,不用手打,有兴趣了解的可以百度 deque。

    应该没人会膜你题意去翻转数列吧。。。

    我看到大部分人A这道题都是都是用数组从中间插入的,其实也可以算手动实现双向队列吧。

    #include<bits/stdc++.h>
    using namespace std;
    
    int n,p,t;
    deque<int> q;
    
    int main()
    {
        scanf("%d",&n);
        p = 1;
        if(n&1) p ^= 1;
        for(int i=1;i<=n;i++)
        {
            scanf("%d",&t);
            if(p&1) q.push_back(t);
            else q.push_front(t);
            p ^= 1;
        }
        while(!q.empty())
        {
            printf("%d ",q.front());
            q.pop_front();
        }
        return 0;
    }
    
  • 1

信息

难度
5
分类
(无)
标签
(无)
递交数
23
已通过
12
通过率
52%
上传者