#7736. 双端队列基本操作

双端队列基本操作

题目描述

请你维护一个初始为空的双端队列,支持以下操作:

  • 1 x:将整数 xx 插入队首;
  • 2 x:将整数 xx 插入队尾;
  • 3:删除队首元素,如果队列为空则不进行操作;
  • 4:删除队尾元素,如果队列为空则不进行操作;
  • 5:查询队首元素,如果队列为空输出 Empty
  • 6:查询队尾元素,如果队列为空输出 Empty
  • 7:查询队列中元素个数。

本题用于练习 C++ 中 deque 的基本接口。

输入格式

第一行一个整数 qq,表示操作次数。

接下来 qq 行,每行一个操作,格式如题目描述。

输出格式

对于操作 567,输出一行结果。

样例

10
1 3
2 5
5
6
7
3
5
4
6
7
3
5
2
5
Empty
0

数据范围与提示

对于 100%100\% 的数据,1q1000001 \le q \le 100000x109|x| \le 10^9

提示:可以使用 push_frontpush_backpop_frontpop_backfrontbacksizeempty