较为简单的stack题目

但是还是犯了一些错误:

1、 要想清空栈,直接重新定义较为方便!

2、在if(s.top()==x)时  加上  !s.empty()  否则程序会崩溃

3、 必须要加上i--  错了好久

#include <bits/stdc++.h>

using namespace std;

int main()
{
int a[];
int n; while(scanf("%d",&n)&&n)
{ while(){ stack<int>s;//方便重置!
scanf("%d",&a[]);
if(a[]==)break;
for(int i=;i<=n;i++)
{scanf("%d",&a[i]);} int ok=;
int j=;
for(int i=;i<=n;i++)
{ if(j==a[i]){j++;}
else if(!s.empty()&&s.top()==a[i]){s.pop();}//没有 s.empty会崩溃
else if(j<=n){j++;s.push(j-);i--;}//i--至关重要 !!!
else {ok=;break;} } if(ok)printf("Yes\n");
else printf("No\n"); }
printf("\n"); }
return ;
}
#include<bits/stdc++.h>
using namespace std; int main()
{
int n;
while(cin>>n&&n)
{
int a[]={};
while(){ stack<int>k;
scanf("%d",&a[]);if(a[]==)break;
for(int i=;i<n;i++)cin>>a[i]; int ok=;int j=;
for(int i=;i<n;i++)
{
if(a[i]==j){j++;continue;}
else if(!k.empty()&&a[i]==k.top()){k.pop();continue;}
else if(j<a[i])
{
while(j<a[i])
{
k.push(j);j++;
}
j++;
}
else {ok=;break;}
} if(ok)printf("Yes\n");else printf("No\n");
}
cout<<endl; } return ;
}

6-2 铁轨 uva 514的更多相关文章

  1. 铁轨(rails, ACM/ICPC CERC 1997,Uva 514)

    铁轨(rails, ACM/ICPC CERC 1997,Uva 514) 题目描述 某城市有一个火车站,铁轨铺设如图所示.有n节车厢从A方向驶入车站,按进站顺序编号为1~n.你的任务是让它们按照某种 ...

  2. UVA 514 - Rails ( 铁轨)

    from my CSDN: https://blog.csdn.net/su_cicada/article/details/86939523 例题6-2 铁轨(Rails, ACM/ICPC CERC ...

  3. 铁轨(UVa 514)

    利用栈实现 C++11 代码如下: #include<iostream> #include<stack> using namespace std; #define maxn 1 ...

  4. UVa 514 铁轨

    题意: #include <bits/stdc++.h> using namespace std; int main() { int n; ]; ; ) { ]) && n ...

  5. Rails,uva 514

    题目:铁轨 题目链接:UVa514链接 题目描述: 某城市有一个火车站,有n节车厢从A方向驶入车站,按进站的顺序编号为1-n.你的任务是判断是否能让它们按照某种特定的顺序进入B方向的铁轨并驶入车站.例 ...

  6. UVa 514 (stack的使用) Rails

    练习一下stack的使用,还有要注意一下输入的格式,看了好长时间没懂. //#define LOCAL #include <iostream> #include <cstdio> ...

  7. uva 514

    栈的简单应用 /************************************************************************* > Author: xlc28 ...

  8. UVa 514 Rails(经典栈)

     Rails  There is a famous railway station in PopPush City. Country there is incredibly hilly. The st ...

  9. Uva - 514 - Rails

    C是一个栈,每次先检查A的第一个元素是否满足,如果满足,直接进入B:再检查C中栈顶元素是否满足,如果满足,出栈进入B:前两步都不满足将A放入C栈中.循环到B满或者A,C中都不满足条件并且A空,第一种情 ...

随机推荐

  1. MongoDB 时差问题问题

    在读取的时候,需要再次转换回来,比较麻烦. 其实,Mongo本身就已经提供了相应的处理方法,即在实体类中加个属性即可.具体如下: [BsonDateTimeOptions(Kind = DateTim ...

  2. SNMP收集

    http://velep.com/archives/416.html     协议基本格式

  3. dos 设置 Windows 网络命令

    dos 设置Windows 命令: netsh interface ip set address name="本地连接" source=static addr=172.16.12. ...

  4. [C++]Linux之图形界面编程库[curses库]之入门教程

    1. 安装 //方法一 sudo apt-get install libncurses5-dev [ ubuntu 16.04:亲测有效] //方法二 sudo apt-get install ncu ...

  5. CSS之清除浮动(span/clearfix)

    一.问题描述 web网页设计中,在div元素中有时候常伴有图文结合的post组件.为了使得文本在图像周围环绕,那么需要对图像区域使用float浮动.如果不做清除浮动,则会出现如下结果: 图像比文本高, ...

  6. Java SE之浅谈JDK SDK JRE

    JDK(Java Development Kit):   1.定义:编写Java程序的程序员使用的软件开发工具包,又被称为Java SDK (Java Software Development Kit ...

  7. Gitlab8.5安装后邮件发送不成功的解决过程

    Gitlab安装成功有,注册邮件一直接收不到也是很生气,修改了 /etc/gitlab/gitlab.rb文件 gitlab_rails['smtp_enable'] = truegitlab_rai ...

  8. 【文件】使用jacob将word转换成pdf格式

    使用jacob将word转换成pdf格式   1.需要安装word2007或以上版本,若安装07版本学确保该版本已安装2downbank0204MicrosoftSaveasPDF_ XPS,否则安装 ...

  9. jQuery——Js与jQuery的相互转换

    $()与jQuery() jQuery中$函数,根据传入参数的不同,进行不同的调用,实现不同的功能.返回的是jQuery对象 jQuery这个js库,除了$之外,还提供了另外一个函数:jQuery j ...

  10. mysql基本命令[转]

    1.连接Mysql 格式: mysql -h主机地址 -u用户名 -p用户密码 1.连接到本机上的MYSQL.首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root ...