提交时间:2023-08-22 16:29:00

运行 ID: 99394

#include <iostream> #include <cstring> using namespace std; class int_stack{ private: int ed=-1,a[512]; public: void push(int x){ ed++,a[ed]=x; } int top(){ return a[ed]; } void pop(){ ed--; } int size(){ return ed+1; } bool empty(){ return ed==-1; } }; int_stack s1,s2; int main(){ bool flag=false; string h; cin >> h; for (int i = 0;i<h.size();i++){ if (h[i]=='('){ s1.push(i); } else if (h[i]==')'){ if (s1.empty()){ flag=true; break; } s1.pop(); } if (h[i]=='['){ s2.push(i); } else if (h[i]==']'){ if (s2.empty()){ flag=true; break; } s2.pop(); } } if (!s1.empty()||flag||!s1.empty()){ cout << "Wrong"; } else{ cout << "OK"; } }