这是对的嘛
2023-09-29 09:13:25
发布于:江苏
26阅读
0回复
0点赞
#include <iostream>
#include <stack>
#include <unordered_map>
using namespace std;
bool isValid(string s) {
stack<char> brackets;
unordered_map<char, char> pairs = {{')', '('}, {']', '['}};
for (char c : s) {
if (c == '(' || c == '[') {
brackets.push(c);
} else if (c == ')' || c == ']') {
if (brackets.empty() || brackets.top() != pairs[c]) {
return false;
}
brackets.pop();
}
}
return brackets.empty();
}
int main() {
int n;
cin >> n;
cin.ignore(); // 忽略换行符
for (int i = 0; i < n; i++) {
string s;
getline(cin, s);
cout << (isValid(s) ? "Yes" : "No") << endl;
}
return 0;
}
这里空空如也
有帮助,赞一个