为什么WA??(30分求助)
  • 板块P1750 出栈序列
  • 楼主_cyh_
  • 当前回复1
  • 已保存回复1
  • 发布时间2022/8/16 20:01
  • 上次更新2023/10/27 15:05:41
查看原帖
为什么WA??(30分求助)
690121
_cyh_楼主2022/8/16 20:01

代码(带思路注释):

#include<bits/stdc++.h>
using namespace std;
int main(){
    int n,c,top=0;//多少个数,栈大小,栈顶指针
    cin>>n>>c;//输入
    long long a[n+1],st[c+1];存数数组和栈
    for(int i=1;i<=n;i++)cin>>a[i];//输入
    int i=1;
    while(i<=n){
        if(top==0||a[i]<=st[top]){//如果栈为空或入栈的数小于等于栈顶元素,则入栈
            top++;
            if(top>c){
                top--;
                cout<<st[top]<<" ";
            }st[top]=a[i];
            i++;
            continue;
        }else{//否则出栈
            cout<<st[top]<<" ";
            top--;
        }
    }while(top){//清空栈
        cout<<st[top]<<" ";
        top--;
    }return 0;
}

测试点情况: AC:1,2,4,5,11; 其余WA。
求大佬揪错!!谢谢。

2022/8/16 20:01
加载中...