题意: 纯纯的模拟栈就行
易错点: 千万别没事直接break了,数据都没输入完。参考ICPC网络赛第一场的网络分组的题,纯纯的模拟题都过不了。 pta平台要额外注意!!! 再错就爪巴
cin>>n>>m>>k;
while(k -- )
{
bool flag = false;
int now = 1;
top = 0;
for(int i=0;i<n;++i)
{
int x; cin>>x;
if(x == now)
{
now ++ ;
while(top != 0 && st[top-1] == now)
{
top -- ;
now ++ ;
}
}
else
{
st[top++] = x;
if(top > m)
{
flag = true;
// break; !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
}
}
}
while(top != 0 && st[top-1] == now)
{
now ++ ;
top --;
}
// cout<<top<<"?\n";
if(top) flag = true;
if(flag) cout<<"NO\n";
else cout<<"YES\n";
}