这是对的嘛
原题链接:542.括号匹配22023-09-29 09:13:25
发布于:江苏
#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;
}
这里空空如也






有帮助,赞一个