#include <stack>
class Solution {
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param s string字符串
* @return bool布尔型
*/
bool isValid(string s) {
// write code here
stack<char> zhan;
bool panduan = true;
for (int i = 0; i < s.size(); i++) {
if (s.at(i) == '[' || s.at(i) == '{' || s.at(i) == '(') {
zhan.push(s.at(i));
}
if (s.at(i) == ')' || s.at(i) == ']' || s.at(i) == '}') {
if (zhan.size() != 0) {
if ((s.at(i) == ')' && zhan.top() != '(')
|| (s.at(i) == ']' && zhan.top() != '[')
|| (s.at(i) == '}' && zhan.top() != '{')) {
panduan = false;
break;
}
zhan.pop();
}
else {
panduan = false;
break;
}
}
}
int shu = zhan.size();
if (panduan && shu == 0){
return true;
}
else {
return false;
}
}
};