qu
【问题描述】
给你一个操作序列 ,问这个维护操作序列的数据结构是哪一种 ?
【输入格式】
第一行是一个正整数n代表操作数目 。
接下来n行,每行两个正整数opt,v。如果opt=1,代表我们将v加入数据结构;如果 opt=2,代表我们从数据结构中取出了一个元素,这个元素的值是 ��。
【输出格式】
输出 三行, 第一行代表数据结构是否可能栈 ,第二行代表数据结构是否可 能是队列 ,第三行代表数据结构是否可能大根堆。每一行的结果都只可能是“ 。每一行的结果都只可能是“ YES” 或者 “No”。
【样例输入】
2
1
2 1
【样例输出】
YES
YES
YES
【数据规模与约定】
100%的数据满足 1≤n≤10^3。
思路:
直接模拟相应数据结构,判断弹出元素是否和给定数字一致。注意可能会出现不合法的输入,需要特判弹出操作比插入操作多的情况。
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<iostream>
#include<queue&