模拟入栈思想
#include<cstdio>
#include<stack>
#include<vector>
#include<algorithm>
using namespace std;
void check(vector<int> sq,int m){
int len=sq.size();
int i,tag=0,j=0;
stack<int> st;
for(i=1;i<=len;i++){
if(st.size()<m) st.push(i);
while((!st.empty()) && st.top()==sq[j]){
st.pop();
j++;
}
}
if(st.empty()) printf("YES\n");
else printf("NO\n");
}
int main(){
int m,n,k;
scanf("%d%d%d",&m,&n,&k);
int i,j,temp;
for(i=0;i<k;i++){
vector<int> sq;
for(j=0;j<n;j++){
scanf("%d",&temp);
sq.push_back(temp);
}
check(sq,m);
}
system("pause");
return 0;
}
PAT A1051 pop sequence
最新推荐文章于 2021-09-20 13:03:56 发布