题解 | #堆栈的使用#

堆栈的使用

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());
                }
            }
        }
    }
}

全部评论

相关推荐

05-23 20:31
已编辑
武汉大学 Java
内向的柠檬精在研究求职打法:注意把武大标粗标大 本地你俩不是乱杀
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务