题解 | 堆栈的使用

堆栈的使用

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

#include <stdio.h>
#include <stack>
using namespace std;

int main() {
    int n;
    while (scanf("%d", &n) != EOF) {
        stack<int> st;
        for (int i = 0; i < n; i++) {
            char flag[2];
            scanf("%s", &flag);
            if (flag[0] == 'A') {
                if (!st.empty()) {
                    printf("%d\n", st.top());
                } else {
                    printf("E\n");
                }
            } else if (flag[0] == 'P') {
                int num;
                scanf("%d", &num);
                st.push(num);
            } else {
                if (!st.empty()) {
                    st.pop();
                }
            }
        }
    }
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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