2017-06-12 62 views
-2

我已經調試了大約一個小時,現在我似乎無法找到我的錯誤。UVA中的運行時錯誤11995

這是我的代碼。

#include <cmath> 
#include <cstdio> 
#include <vector> 
#include <iostream> 
#include <algorithm> 
#include <queue> 
#include <stack> 
#define lol long long 
using namespace std; 

int main() { 
    /* Code for UVA 11995 */ 
    lol N; 
    while(cin >> N){ 
     stack<lol> st; 
     queue<lol> qu; 
     priority_queue<lol> pq; 
     bool _st=true,_qu=true,_pq=true; 
     lol a,b; 
     for(lol i=0; i<N; i++){ 
      cin >> a >> b; 
      if(a==1){ 
       st.push(b); 
       qu.push(b); 
       pq.push(b); 
      } 
      else{ 
       lol st_=st.top(),qu_=qu.front(),pq_=pq.top(); 
       st.pop(); qu.pop(); pq.pop(); 
       if(b!=st_) _st=false; 
       if(b!=qu_) _qu=false; 
       if(b!=pq_) _pq=false; 
      } 
     } 
     if(_st==true && _qu==false && _pq==false) cout << "stack"; 
     else if(_st==false && _qu==true && _pq==false) cout << "queue"; 
     else if(_st==false && _qu==false && _pq==true) cout << "priority queue"; 
     else if(_st==false && _qu==false && _pq==false) cout << "impossible"; 
     else cout << "not sure"; 
     cout << endl; 
    } 
    return 0; 
} 

再次,我似乎無法找到造成運行時錯誤的那個。

感謝您的幫助! :D

+1

你得到什麼錯誤? –

+0

我得到RUNTIME錯誤。 –

回答

-1

嗯,我發現了錯誤。

我的錯誤是我彈出棧,隊列和pq,即使它是空的。