輸出超限?什么鬼?


題目是棧操作

#include "bits/stdc++.h"
using namespace std;

int main()
{
    string m;
    while(cin >> m)
    {
        stack<int>b;
        int len = m.length();
        for(int i=0,k = 1;i < len ;i++){
            if(m[i] == 'P'){
                b.push(k++);
            }
            else
            {
                if(!b.empty()){
                    cout << b.top() << " ";
                    b.pop();
                }
                else
                {
                    cout << "error";
                    break;
                }

            }
        }
        cout << endl;
    }
}

最后發現是在輸出error后沒有及時的break,造成后續的輸出,比較欣慰的是oj提出了“輸出超限”的提示,找到了問題所在。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM