题目链接:https://ac.nowcoder.com/acm/contest/1071/D

还是第一次简单运用双端队列。顾名思义:队列的头尾都可以进行插入跟删除操作。

存在于头文件 deque 中。

 #include<iostream>
#include<deque>
#include<string.h>
using namespace std; char a, b;
int x;
deque<int> Q; int main()
{
cin.sync_with_stdio(false);
int n, id = ;
cin >> n;
while(n --)
{
cin >> a;
if(a == 'A')
{
cin >> b;
if(b == 'L')
Q.push_front(++ id);
else
Q.push_back(++ id);
}
else
{
cin >> b >> x;
if(b == 'L')
while(x --)
Q.pop_front();
else
while(x --)
Q.pop_back();
}
}
while(!Q.empty())
{
x = Q.front();
cout << x << endl;
Q.pop_front();
}
return ;
}

deque的简单操作

05-25 08:20