提交时间:2023-08-22 16:21:10
运行 ID: 99356
#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; } }s; int main(){ bool flag; string h; cin >> h; for (int i = 0;i<h.size()-1;i++){ if (h[i]=='('){ s.push(i); } else if (h[i]==')'){ if (s.empty()){ flag=true; break; } s.pop(); } } if (!s.empty()||flag){ cout << "NO"; } else{ cout << "YES"; } }