6-2 铁轨 uva 514
较为简单的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的更多相关文章
- 铁轨(rails, ACM/ICPC CERC 1997,Uva 514)
铁轨(rails, ACM/ICPC CERC 1997,Uva 514) 题目描述 某城市有一个火车站,铁轨铺设如图所示.有n节车厢从A方向驶入车站,按进站顺序编号为1~n.你的任务是让它们按照某种 ...
- UVA 514 - Rails ( 铁轨)
from my CSDN: https://blog.csdn.net/su_cicada/article/details/86939523 例题6-2 铁轨(Rails, ACM/ICPC CERC ...
- 铁轨(UVa 514)
利用栈实现 C++11 代码如下: #include<iostream> #include<stack> using namespace std; #define maxn 1 ...
- UVa 514 铁轨
题意: #include <bits/stdc++.h> using namespace std; int main() { int n; ]; ; ) { ]) && n ...
- Rails,uva 514
题目:铁轨 题目链接:UVa514链接 题目描述: 某城市有一个火车站,有n节车厢从A方向驶入车站,按进站的顺序编号为1-n.你的任务是判断是否能让它们按照某种特定的顺序进入B方向的铁轨并驶入车站.例 ...
- UVa 514 (stack的使用) Rails
练习一下stack的使用,还有要注意一下输入的格式,看了好长时间没懂. //#define LOCAL #include <iostream> #include <cstdio> ...
- uva 514
栈的简单应用 /************************************************************************* > Author: xlc28 ...
- UVa 514 Rails(经典栈)
Rails There is a famous railway station in PopPush City. Country there is incredibly hilly. The st ...
- Uva - 514 - Rails
C是一个栈,每次先检查A的第一个元素是否满足,如果满足,直接进入B:再检查C中栈顶元素是否满足,如果满足,出栈进入B:前两步都不满足将A放入C栈中.循环到B满或者A,C中都不满足条件并且A空,第一种情 ...
随机推荐
- MongoDB 时差问题问题
在读取的时候,需要再次转换回来,比较麻烦. 其实,Mongo本身就已经提供了相应的处理方法,即在实体类中加个属性即可.具体如下: [BsonDateTimeOptions(Kind = DateTim ...
- SNMP收集
http://velep.com/archives/416.html 协议基本格式
- dos 设置 Windows 网络命令
dos 设置Windows 命令: netsh interface ip set address name="本地连接" source=static addr=172.16.12. ...
- [C++]Linux之图形界面编程库[curses库]之入门教程
1. 安装 //方法一 sudo apt-get install libncurses5-dev [ ubuntu 16.04:亲测有效] //方法二 sudo apt-get install ncu ...
- CSS之清除浮动(span/clearfix)
一.问题描述 web网页设计中,在div元素中有时候常伴有图文结合的post组件.为了使得文本在图像周围环绕,那么需要对图像区域使用float浮动.如果不做清除浮动,则会出现如下结果: 图像比文本高, ...
- Java SE之浅谈JDK SDK JRE
JDK(Java Development Kit): 1.定义:编写Java程序的程序员使用的软件开发工具包,又被称为Java SDK (Java Software Development Kit ...
- Gitlab8.5安装后邮件发送不成功的解决过程
Gitlab安装成功有,注册邮件一直接收不到也是很生气,修改了 /etc/gitlab/gitlab.rb文件 gitlab_rails['smtp_enable'] = truegitlab_rai ...
- 【文件】使用jacob将word转换成pdf格式
使用jacob将word转换成pdf格式 1.需要安装word2007或以上版本,若安装07版本学确保该版本已安装2downbank0204MicrosoftSaveasPDF_ XPS,否则安装 ...
- jQuery——Js与jQuery的相互转换
$()与jQuery() jQuery中$函数,根据传入参数的不同,进行不同的调用,实现不同的功能.返回的是jQuery对象 jQuery这个js库,除了$之外,还提供了另外一个函数:jQuery j ...
- mysql基本命令[转]
1.连接Mysql 格式: mysql -h主机地址 -u用户名 -p用户密码 1.连接到本机上的MYSQL.首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root ...