#include<bits/stdc++.h>
const int N=1e5+10;
using namespace std;
int main()
{
int n;
while(cin>>n,n)
{
queue<int>s;
for(int i=0;i<n;i++)
{
int val;
cin >> val;
s.push(val);
}
stack<int> stk;
for (int i = 1; i <= n; i++)
{
stk.push(i);
while (!stk.empty() && stk.top() == s.front())
{
stk.pop();
s.pop();
}
}
cout << (s.empty() ? "Yes\n" : "No\n");
}
return 0;
}
出栈合法性(模拟)
最新推荐文章于 2024-06-07 15:51:57 发布