出栈顺序判断
来源:互联网 发布:淘宝联盟活动推广 编辑:程序博客网 时间:2024/04/29 09:32
#include<iostream>#include<fstream>#include<stack>#include<sstream>using namespace std;int main(){ifstream in("stack.txt");for (int n, line = 0; in >> n&&n&&in.ignore();){cout << (line++ ? "\n" : "");for (string s; getline(in, s) && s != "0";){istringstream sin(s);stack<int> st;for (int last = 0, coach; sin >> coach; st.pop()){for (int p = last + 1; p <= coach; p++)st.push(p);if (last < coach)last = coach;if (st.top ()!= coach)break;}cout << (!sin ? "YES\n" : "NO\n");}}}
测试样例:
5
3 2 1 5 4
5 4 1 2 3
0
6
6 5 4 3 2 1
0
0
每一组第一个数据代表栈内数据数目,以0结尾
输出:
YES
NO
YES
0 0
- 判断出栈顺序
- 判断出栈顺序
- 出栈顺序判断
- 判断出栈顺序
- 判断出栈顺序合法性
- 判断出栈顺序是否合法
- C++判断出栈顺序
- 栈-判断某个出栈顺序是否合法
- java判断出栈顺序是否正确
- 判断某个出栈顺序是否合法
- 判断出栈顺序的合理性
- 判断出栈顺序是否正确
- 判断出栈顺序是否正确
- 如何判断出栈顺序是否正确?
- 【数据结构】判断出栈顺序的合法性
- 18.判断出栈顺序是否正确?
- 判断出栈顺序是否正确
- 判断元素出栈顺序是否合法
- 查看Eclipse 的版本
- Eclipse中项目名出现红色感叹号解决方法
- 让自己快乐的几个小建议
- js操作 ifarm contentWindow属性
- 清空IP缓存
- 出栈顺序判断
- malloc的内存分配之 malloc(0)的内存分配情况
- 黑马程序员-内存堆栈分析
- java 排序一个集合
- android中完全退出程序的四种办法
- 用VisualVM来进行性能测试
- HibernateTransactionManager事务管理
- 虚拟机出现“内部错误”捉鬼
- 通信调试经验笔记