南阳OJ 2-括号配对问题
题目链接 http://nyoj.top/problem/2
栈的简单应用,原来一直想做但没做的一题。
#include <bits/stdc++.h>
using namespace std;
void doo() {
string s;
getline(cin, s);
stack<char> sta;
for(int i=0; i<s.length(); i++) {
if(i == 0 || sta.empty()) {
sta.push(s[i]);
continue;
}
if(s[i] - 1 == sta.top() || s[i] - 2 == sta.top()) {
sta.pop();
} else {
sta.push(s[i]);
}
}
cout << (sta.empty() ? "Yes" : "No") << endl;
}
int main() {
int T;
cin >> T;
getchar();
while(T--)
doo();
return 0;
}
耗时信息:
47056 Falcon 2 答案正确 C++ 6ms 2096 KB 548 B 2018-10-10 23:14:32
本文介绍了一种解决括号配对问题的方法,通过使用C++的栈结构来判断括号是否正确配对。代码实现简洁,通过输入字符串并利用栈的特性进行匹配,最终输出括号是否正确配对的结果。
410

被折叠的 条评论
为什么被折叠?



