#P0164. deque & d.front() & d.back()

deque & d.front() & d.back()

题目描述

deque<int>ddeque <int> d

常用函数

d.push_back(value)value 添加到队列的末尾。

d.push_front(value)value 添加到队列的首部。

d.front() 返回队列第一个元素。

d.back() 返回队列最后一个元素。

注意: 包含 #include <queue>

#include <iostream>
#include <queue>
using namespace std;
deque<int> d;
int main()
{
    int n;
    cin >> n;
     
    for(int i = 0; i < n; ++ i)
    {
        int op, t;
        cin >> op;
        if(op == 1)
        {
            cin >> t;
            d.push_back(t);
        }
        else if(op == 2)
        {
            cin >> t;
            d.push_front(t);
        }
        else if(op == 3)
        {
            cout << d.front() << ' ';
        }
        else
        {
            cout << d.back() << ' ';
        }
    }
    
    return 0;
}

输入格式

11 行,为一个正整数 nn

接下来 nn 行,每行一个正整数 opop

opop11 则接着输入一个整数 tt, 并将其 q.push_back(t)q.push\_back(t) 入队。

opop22, 则接着输入一个整数 tt, 并将其 q.push_front(t)q.push\_front(t) 入队。

opop33,则输出队列第一个元素。

opop44,则输出队列最后一个元素。

数据保证 opop3344 时队列不为空。

输出格式

共一行,对于每个 3344 操作输出相应的值,数字间用空格隔开。

数据范围

1n104.1 ≤ n ≤ 10^4.

1t105.1 ≤ t ≤ 10^5.

输入样例:

4
1 2
2 1
3
4

输出样例:

1 2