题解 | #堆栈的使用#

堆栈的使用

https://www.nowcoder.com/practice/e91982a145944ceab6bb9a4a508e0e26

#include<cstdio>
#include<stack>

using namespace std;
int main() {
    int n ;
    char x;
    int y ;
     stack<int> myStack;
    while (scanf("%d", &n) != EOF) {
        for (int i = 0 ; i < n ; ++i) {
            scanf("%c", &x);
            if (x == 'P') {
                scanf("%d", &y);
                myStack.push(y);
            } else if (x ==  'O') {
                if (!myStack.empty()) {
                    myStack.pop();
                }
            } else if (x == 'A') {
                if (myStack.empty()) {
                    printf("E\n");
                } else {
                    printf("%d\n", myStack.top());
                }
            }
        }
    }
}

全部评论

相关推荐

宇智波爱学习:我还没收到笔试
投递荣耀等公司10个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务