注意:刚开始用数组存deque<int> qa[MAX]会爆内存

需要改用map<int, deque<int> > qa优化

不明觉厉

#include<bits/stdc++.h>

using namespace std;

void read(int &x){

    char ch = getchar();x = 0;

    for (; ch < '0' || ch > '9'; ch = getchar());

    for (; ch >='0' && ch <= '9'; ch = getchar()) x = x * 10 + ch - '0';

}

map<int,deque<int> >qa;

int N,Q;

int main()

{

    //freopen("in.txt","r",stdin);

    int sign,u,v,w,val;

    while(cin>>N>>Q)

    {

        qa.clear();

    while(Q--)

    {

        read(sign);

        if(sign==1)

        {

            read(u);read(w);read(val);

            if(w==0){

qa[u].push_front(val);

            }

            else qa[u].push_back(val);

        }

        if(sign==2)

        {

            read(u);read(w);

            if(qa[u].empty())

                    {

                        cout<<-1<<endl;

                        continue;

                    }

            if(w==0){cout<<qa[u].front()<<endl;qa[u].pop_front();}

            else {cout<<qa[u].back()<<endl;qa[u].pop_back();}

        }

        if(sign==3)

        {

            read(u);read(v);read(w);

            if(w==0)

            {

qa[u].insert(qa[u].end(),qa[v].begin(),qa[v].end());

            }

            else

            {

                qa[u].insert(qa[u].end(),qa[v].rbegin(),qa[v].rend());

            }

            qa[v].clear();

        }

    }

    }

}

2018百度之星初赛A轮 度度熊学队列的更多相关文章

  1. 2018百度之星初赛A轮 度度熊拼三角

    #include<bits/stdc++.h> using namespace std; int n; int a[1005]; int main() {     int ans;     ...

  2. 2018百度之星初赛B轮 p1m2

    p1m2 Accepts: 954 Submissions: 4063 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/1310 ...

  3. 2018百度之星初赛B轮 rect

    rect Accepts: 1654 Submissions: 2948 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131 ...

  4. 2017百度之星资格赛 1003:度度熊与邪恶大魔王(DP)

    .navbar-nav > li.active > a { background-image: none; background-color: #058; } .navbar-invers ...

  5. hdu6375 度度熊学队列

    度度熊学队列 题目传送门 解题思路 STL大法好.直接用deque,但是N的范围很大,如果直接开那么多的deque会爆内存,所以用map< int, deque< int>>, ...

  6. 百度之星初赛A轮 A 度度熊拼三角 贪心

    度度熊拼三角  Accepts: 2536  Submissions: 4433  Time Limit: 2000/1000 MS (Java/Others)  Memory Limit: 6553 ...

  7. 2018百度之星初赛B - A,D,F

    总结:这一次的百度之星之行到这里也就结束了,充分的认识到了自己的不足啊...果然还是做的题太少,,见识的题型也还太少,对于STL的掌握还是不够到位啊!!(STL大法是真的好,建议大家认认真真的好好学学 ...

  8. 2018 百度之星 初赛 第六题 HDU6349

    三原色图  Accepts: 281  Submissions: 1261  Time Limit: 1500/1000 MS (Java/Others)  Memory Limit: 262144/ ...

  9. 2017"百度之星"程序设计大赛 - 资格赛-度度熊与邪恶大魔王(dp+后缀最小值)

    度度熊与邪恶大魔王 思路:由于防御和血量的范围很小,所以暴力枚举出对于每种防御造成的每种伤害所需的最小花费,最后只需在伤害大于等于血量的情况下再找到最小花费(这个只需要后缀最小值预处理一下就可以了) ...

随机推荐

  1. 小记-----如何把本地jar包加载到maven库中

    1.从maven中央库下载下jar包

  2. BZOJ 4857 反质数序列

    题面 奇数+奇数一定不是质数(1+1除外),偶数+偶数一定不是质数,质数只可能出现在偶数+奇数中 把所有的点排成两列,权值为奇数的点在左边,权值为偶数的在右边 如果左边的点x+右边的点y是质数,我们就 ...

  3. django-xadmin使用

    django-xadmin使用基础环境为: PS:如下环境如需升级python则先升级python,然后安装django python3.6.4安装: http://www.cnblogs.com/c ...

  4. vlang

    参考 V语言中文教程 - 基础部分

  5. 在Asp.net core使用配置Json创建动态目录树

    一.前言 使用动态目录树可以使左边栏中的目录更加灵活,本文介绍如何将目录保存在json配置文件中,再读取出来经过处理后生成目录树. 二.数据结构 1. TreeMenuNode类名 将TreeMenu ...

  6. npm工作流 与webpack 分同环境配置

    npm:http://www.ruanyifeng.com/blog/2016/10/npm_scripts.html process.env.npm_lifecycle_event process. ...

  7. 列举java语言中反射的常用方法

    package review;/*12:43 2019/7/21*/ import model.AnotherClass; import model.OneClassMore; import mode ...

  8. 【AST篇】教你如何编写 Eslint 插件

    前言 虽然现在已经有很多实用的 ESLint 插件了,但随着项目不断迭代发展,你可能会遇到已有 ESLint 插件不能满足现在团队开发的情况.这时候,你需要自己来创建一个 ESLint 插件. 本文我 ...

  9. ARM伪指令和协处理器访问指令

    伪指令本身没有对应的机器码 .global声明全局符号,点事GUN汇编的特点 .data定义数据段 .equ DA #0x89 定义宏 .align 4 4字节对齐 mov 指令里的立即数只能是8位的 ...

  10. tensorflow 学习教程

    tensorflow 学习手册 tensorflow 学习手册1:https://cloud.tencent.com/developer/section/1475687 tensorflow 学习手册 ...