题解 | 堆栈的使用

堆栈的使用

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

#include <iostream>
#include <stack>
using namespace std;

int main() {
    int n;
    char op;
    while (cin >> n) {
        stack<int> numbers;
        int num;
        for (int i = 0; i < n; i++) {
            cin >> op;
            if (op == 'P') {
                cin >> num;
                numbers.push(num);
            } else if (op == 'O') {
                if (!numbers.empty()) {
                    numbers.pop();
                }
            } else if (op == 'A') {
                if (numbers.empty()) {
                    cout << 'E' << endl;
                } else {
                    cout << numbers.top() << endl;
                }
            }
        }
    }
    return 0;
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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