UVa 673 - Parentheses Balance
2014-11-18 10:57
453 查看
简单的栈应用。一开始忽略了判断栈是否为空。
#include<iostream> #include<string> #include<stack> #include<map> using namespace std; int n; string s; map<char,char>a; int main(){ a[')']='('; a[']']='['; cin>>n; cin.get(); while(n--){ stack<char>c; getline(cin,s); int i; for(i=0;i<s.length();i++){ if(s[i]=='('||s[i]=='[') c.push(s[i]); else if(s[i]==')'||s[i]==']'){ if(c.empty()) break; if(c.top()==a[s[i]]) c.pop(); else break; } else continue; } if(i==(int)s.length()&&c.empty()) cout<<"Yes"<<endl; else cout<<"No"<<endl; } return 0; }
相关文章推荐
- UVA 673 Parentheses Balance
- uva 673 Parentheses Balance 【栈】
- uva 673 - Parentheses Balance
- uva 673 Parentheses Balance
- UVA 673 Parentheses Balance
- UVA 673 Parentheses Balance
- UVA 673-Parentheses Balance
- UVA673 Parentheses Balance
- UVa 673 - Parentheses Balance
- UVA_673: Parentheses Balance
- UVA 673 Parentheses Balance
- UVA - 673 - Parentheses Balance(栈)
- Uva - 673 - Parentheses Balance
- UVa 673 - Parentheses Balance
- UVa 673 - Parentheses Balance
- UVA 673 Parentheses Balance (栈)
- uva 673 Parentheses Balance(栈)
- UVA673 Parentheses Balance【堆栈+输入流】
- UVa673 Parentheses Balance
- (平衡的括号)Parentheses Balance UVA - 673