堆栈的使用

堆栈的使用

http://www.nowcoder.com/questionTerminal/e91982a145944ceab6bb9a4a508e0e26

改了好几次发现格式错误的地方 呜呜呜

#include <iostream>
#include <cstdio>
#include <stack>

using namespace std;

int main() {
  int n,m;
  char c;
  stack<int> mystack;
  while (scanf("%d", &n) != EOF) {
    for (int i = 0; i < n; ++i) {
      scanf(" %c", &c); //注意此处输入格式
      if (c == 'P') {
        scanf("%d", &m);
        mystack.push(m);
      } else if (c == 'O') {
          if (!mystack.empty()) {
            mystack.pop();
          }
      } else if (c == 'A') {
          if (mystack.empty()) {
            printf("E\n");
          } else {
            printf("%d\n", mystack.top());
          }
      }
    }
      printf("\n");
      while (!mystack.empty()) {
          mystack.pop();
      }
  }
  return 0;
}
全部评论
不然会把换行输入到a里面去,把空格改成\n也行
点赞 回复 分享
发布于 2022-02-28 19:58

相关推荐

牛客618272644号:佬携程工作怎么样,强度大吗
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务