UVa673 - Parentheses Balance
【摘要】
//UVa673 - Parentheses Balance//已AC#include<iostream>#include<string>#include<stack>using namespace std;int main(){ int T; cin>>T; getchar(); //c...
-
//UVa673 - Parentheses Balance
-
//已AC
-
#include<iostream>
-
#include<string>
-
#include<stack>
-
using namespace std;
-
int main(){
-
int T;
-
cin>>T;
-
getchar(); //cin.get(); 读取整数后面的第一个换行符,防止误导后面的getline();
-
while(T--){
-
string str;
-
stack<char>s;
-
getline(cin,str); //读取包括换行符在内的一整行(但是不输出换行符??)
-
int ok = 1;
-
for(int i = 0; i < str.size(); i++){
-
if(str[i] == '(' || str[i] == '[') s.push(str[i]);
-
else if(!s.empty()&& s.top() == '(' && str[i] == ')') s.pop();
-
else if(!s.empty()&& s.top() == '[' && str[i] == ']') s.pop();
-
else ok = 0;
-
}
-
ok&&s.empty()? cout<<"Yes\n": cout<<"No\n";
-
}
-
return 0;
-
}
文章来源: gwj1314.blog.csdn.net,作者:小哈里,版权归原作者所有,如需转载,请联系作者。
原文链接:gwj1314.blog.csdn.net/article/details/68957261
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)