UVa 673 - Parentheses Balance
2014-03-07 16:47
567 查看
Parentheses Balance |
(a)if it is the empty string(b)if A and B are correct, AB is correct,(c)if A is correct, (A) and [A] is correct.
Write a program that takes a sequence of strings of this type and check their correctness. Your program can assume that the maximum string length is 128.
Input
The file contains a positive integer n and a sequence of n stringsof parentheses () and [], one string a line.
Output
A sequence of Yes or No on the output file.Sample Input
3 ([]) (([()]))) ([()[]()])()
Sample Output
Yes No Yes
Miguel Revilla
2000-08-14
#include <cstdio> #include <iostream> #include <cstring> #include <stack> using namespace std; const int MAX = 150; stack<char> s; string buff; int n; bool find(char ch) { if(s.empty()) return false; if(ch==')') { if(s.top()=='(') { s.pop(); return true; } return false; }else if(ch==']'){ if(s.top()=='[') { s.pop(); return true; } return false; } } void solve() { int length = buff.size(); bool ans=true; for(int i=0; i < length; i++) { if(buff[i]=='(' || buff[i]=='[') s.push(buff[i]); else { if(!find(buff[i])){ ans = false; break; } } } if(ans && s.empty()) printf("Yes\n"); else printf("No\n"); } void init() { while(!s.empty()) s.pop(); } void read() { cin>>n; cin.get(); while(n--) { init(); getline(cin, buff); solve(); } } int main() { // freopen("in.txt","r",stdin); read(); return 0; }
两点需要注意的地方,一个输入,一个在输出时需要判断栈是否为空,唉,贡献了好几个WA
相关文章推荐
- Parentheses Balance UVA 673
- UVa673_ 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
- Uva 673 - Parentheses Balance
- UVa 673 Parentheses Balance
- Uva 673 Parentheses Balance
- UVA - 673 Parentheses Balance
- UVA - 673 Parentheses Balance
- UVa 673 Parentheses Balance(2)
- UVa 673 Parentheses Balance(栈)