题解 | #F-Rails# 看没大佬发F题题解 小蒟蒻就在这献丑了
/// 题意 个人理解哈 :火车以标号1-n的顺序进入 ,问是否可以按输入标号出去(本蒟蒻第一次发题解,勿喷勿喷xx)// 上代码:
#include
#include
#include
using namespace std;
#define ll long long
const int N=2e5+10;
ll a[N],b[N],c[N];
ll res=0,n;
int main()
{
while(cin>>n&&n) // 判断- 是否持续输入
{
while(cin>>a[0]&&a[0]) // 同上
{
for(int i=1;i<n;i++)
cin>>a[i];
stack<ll>s;
for(int i=0,j=1;j<=n;j++)
{
s.push(j); // 按顺序入栈 -- 入栈顺序
while(!s.empty()&&s.top()==a[i]) // 满足出栈要求的标号 ,出栈
{
i++;
s.pop();
}
}
if(s.empty())
cout<<"Yes"<<endl; // 空了 说明都出去了 // 符合要求
else
cout<<"No"<<endl;
}
cout<<endl;
}
return 0;
}
作者:想要一个AK 链接:https://www.nowcoder.com/discuss/650642006716293120?sourceSSR=users 来源:牛客网