算法竞赛入门经典P91铁轨

来源:互联网 发布:爱读掌阅软件下载 编辑:程序博客网 时间:2024/04/30 05:51
#include<cstdio>#include<stack>using namespace std;const int MAXN=1000+10;int n,target[MAXN];int main(){while(scanf("%d",&n)==1){stack<int> s;int A=1,B=1;for(int i=1;i<=n;i++)scanf("%d",&target[i]);int ok=1;while(B<=n){if(A==target[B]){A++;B++;}else if(!s.empty()&&s.top()==target[B]){s.pop();B++;}else if(A<=n){s.push(A++);}else{ok=0;break;}}printf("%s\n",ok? "Yes":"No");}}