Use Luo Gu P2952 cow Cow Line line solution to a problem of double-ended queue deque

Topic links: https://www.luogu.com.cn/problem/P2952

This question is one pair ended queue entry title, deque I use STL containers provided directly implement this function.

Codes are as follows:

#include <bits/stdc++.h>
using namespace std;
deque<int> que;
int n, c, a;
string s, t;
int main() {
    cin >> n;
    while (n --) {
        cin >> s >> t;
        if (s == "A") {
            if (t == "L") que.push_front(++c);
            else que.push_back(++c);
        }
        else {
            cin >> a;
            if (t == "L") while (!que.empty() && a --) que.pop_front();
            else while (!que.empty() && a --) que.pop_back();
        }
    }
    while (!que.empty()) {
        cout << que.front() << endl;
        que.pop_front();
    }
    return 0;
}

Guess you like

Origin www.cnblogs.com/quanjun/p/12288926.html