给出一堆括号,看其是否匹配,例如 ()、()()、(()) 这样的括号就匹配,
)(、)()) 而这样的括号就不匹配
标签:字符 include nbsp str 括号匹配 bsp esc data script
使用STL的stack容易实现。
#include <iostream>
#include <algorithm>
#include <stack>
#include <string>
using namespace std;
int main()
{
string s;
stack<int> sta;
while(cin>>s)
{
while(!sta.empty())
sta.pop();
int len=s.size();
for(int i=0;i<len;i++)
{
if(s[i]==‘(‘)
sta.push(1);
else
{
if((!sta.empty()) && (sta.top()==1))
sta.pop();
else
sta.push(0);
}
}
if(!sta.empty())
cout<<"NO"<<endl;
else
cout<<"YES"<<endl;
}
}
标签:字符 include nbsp str 括号匹配 bsp esc data script
原文地址:http://www.cnblogs.com/masterchd/p/6775529.html