题目:http://poj.org/problem?id=1363

这个题目题意很简单。给你一组数据,让你判断存在不存在这样的出栈顺序,。

这道题是数据结构一个实验,我选了这个,做一下练习吧!

这个代码是具体栈的实现,

#include<iostream>
using namespace std;
#define size 1010
struct sta
{int *top;int *base;int stasize;
};
int sta_init(sta &s)
{s.base=new int [sizeof(int)*size];if(!s.base) return 0;s.top=s.base;s.stasize=size;return 1;
}
void sta_push(sta &s,int x)
{*s.top++=x;}
void sta_pop(sta &s)
{--s.top;
}
bool sta_e(sta &s)
{if(s.top==s.base) return 1;return 0;
}int t[1010];
int main()
{int n;while(cin>>n,n){sta S;sta_init(S);int i,j;while(cin>>t[0],t[0]){while(!sta_e(S))sta_pop(S);for(i=1;i<n;i++)cin>>t[i];j=0;for(i=1;i<=n;){while(sta_e(S) || (!sta_e(S)&&(*(S.top-1)<t[j])))sta_push(S,i++);while(!sta_e(S)&&(*(S.top-1)==t[j])){  j++;sta_pop(S); }if(j<n && !sta_e(S) && (*S.top>t[j]))break;}if(sta_e(S))cout<<"Yes\n";elsecout<<"No\n";}cout<<endl;}return 0;
}

下面这个是调用的库函数。作为参考

#include<stdio.h>
#include <stack>
using namespace std;
int main()
{int n;while(scanf("%d", &n) && n){stack<int> sta;int s[1001],i;while(scanf("%d", &s[0])){while(!sta.empty()) sta.pop();if(s[0]==0) { putchar('\n'); break;}for(i=1; i<n; i++)scanf("%d", &s[i]);int j=0;for(i=1; i<=n;){while(sta.empty() || (!sta.empty() && sta.top()<s[j]))sta.push(i++);while(!sta.empty() && sta.top()==s[j])j++,sta.pop();if(!sta.empty() && j<n && sta.top()>s[j])break;}puts(sta.empty()?"Yes":"No");}}
}

poj_1363_Rai相关推荐

最新文章

  1. Android--应用开发3(Android layout XML属性)
  2. HDU1166 敌兵布阵(树状数组模板题)
  3. mysql命令集合,MySql常用命令集合
  4. GraphPad Prism 9 如何一次处理多张图表?
  5. 09-CNN手写数字识别
  6. Windows系统克隆***与防范
  7. python与数学关系大吗_通过一个简单的数学游戏,清晰了解各大编程语言之间的一些区别...
  8. dlut-KFQ概率上机1
  9. pytorch Inception代码实现
  10. 【html、CSS、javascript-11】jquery-事件使用方法总结
  11. Code blocks调试教程
  12. 贵州学业水平测试信息技术软件,贵州信息技术学业水平考试系统操作手册.doc...
  13. 百度富文本编辑器配置使用
  14. 北京、纽约、伦敦、东京、巴黎五大都市圈中,东京人口集中度最高,北京人均GDP增速卓越 | 美通社头条...
  15. 树莓派1——摄像头实时视频和截图
  16. 网络分层和对应的协议列表
  17. Revit SDK EXTENSIONS(软件开发工具包扩展)是什么
  18. 网络:TCP与UDP
  19. 多种在线地图综合对比,Google,必应,arcgis Online...
  20. ROS从入门到精通系列(十四)-- PR2机器人应用

热门文章

  1. MySQL的DDL(数据定义语言)
  2. 【linux】软件管理
  3. CAD随机多面体3D 多面体骨料 凸多面体颗粒
  4. 测试家里网速用什么软件,家中宽带网速多少?教你测试小妙招
  5. 电脑上的各个组合及功能键作用
  6. 第十四节 OSAL工作原理
  7. Opencv测量图片中的物体大小
  8. week15作业A ZJM 与霍格沃兹
  9. JSP自定义带属性的标签
  10. 全志平台WiFi无法连接AP问题调试(1)问题分析