PAT甲题题解-1051. Pop Sequence (25)-堆栈
2017-03-22 18:22
337 查看
将1~n压入最多为m元素的栈 给出k个出栈序列,问你是否能够实现。 能输出YES 否则NO 模拟一遍即可,水题。
#include<iostream> #include<cstdio> #include<string.h> #include<algorithm> usingnamespacestd; constintmaxn=1005; intm,n,k; intseq[maxn]; intstacks[maxn]; intrear=0; intmain() { intval; scanf("%d%d%d",&m,&n,&k); for(inti=0;i<k;i++){ for(intj=0;j<n;j++){ scanf("%d",&seq[j]); } rear=0;//对尾 intnum=0;//要压入的数 boolflag=true; for(intj=0;j<n;j++){ while(num<seq[j]&&rear<m){ stacks[rear++]=++num; } //如果栈内元素已满,则false if(rear>=m&&num!=seq[j]){ flag=false; break; } //对尾是否是要pop的元素 if(stacks[rear-1]==seq[j]) rear--; else{ flag=false; break; } } if(flag) printf("YES\n"); else printf("NO\n"); } return0; }
ViewCode
相关文章推荐
- 【PAT】1051. Pop Sequence (25)
- PAT 1051. Pop Sequence (25)(模拟stack,问你能否依靠stack输出给出的序列)
- PAT1051. Pop Sequence (25)
- 【C++】PAT(advanced level)1051. Pop Sequence (25)
- PAT 1051. Pop Sequence (25) 栈
- PAT 1051. Pop Sequence (25)
- pat-a1051. Pop Sequence (25)
- PAT-A-1051. Pop Sequence (25)
- 【解题报告】【浙大PAT】1051. Pop Sequence (25)
- 1051. Pop Sequence (25)-PAT甲级真题
- PAT 1051. Pop Sequence (25)
- PAT (Advanced Level) 1051. Pop Sequence (25)
- PAT 1051. Pop Sequence (25)
- PAT题解——1051. Pop Sequence (25)
- PAT 1051. Pop Sequence (25)
- PAT 1051. Pop Sequence (25)
- PAT 解题报告 1051. Pop Sequence (25)
- 【PAT】【Advanced Level】1051. Pop Sequence (25)
- PAT 1051. Pop Sequence (25)
- PAT 1051. Pop Sequence (25)