12

张江鹏  •  10个月前


#include<iostream>
#include<stack>
#include<cstdio>
#include<cstring>
#include<cmath>
using namespace std;
stack<int> s;
int main()
{
   int i;
   int n,cur=1;//cur表示当前已经入栈的最大车厢号,入栈后无法回退重来
   int temp=0;
   int a[1001];
   cin>>n;
   for(i=1;i<=n;i++)
   cin>>a[i];//输入的时候尽量使用cin语句避免出错
   for(i=1;i<=n;i++)
   {
       while(cur<=a[i])
       {
           s.push(cur);cur++;
       }
       if(s.top()==a[i])
           s.pop();
       else
       {
           cout<<"NO"<<endl;
           return 0;
       }
   
   }
       cout<<"YES"<<endl;
       return 0;
}


————————————————

                           版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
                        
原文链接:https://blog.csdn.net/u010583225/article/details/81606096


评论: