pta括号配对
时间: 2023-10-17 13:15:18 浏览: 91
括号配对问题
题目描述:
给定N个括号,请你判断它们是否配对。
输入格式:
第一行包含一个整数N,表示括号的个数。
第二行包含N个字符,每个字符只可能是 ( 或 )。
输出格式:
如果所有括号都可以配对,则输出YES,否则输出NO。
数据范围:
1≤N≤105
输入样例1:
6
()()()
输出样例1:
YES
输入样例2:
5
(())(
输出样例2:
NO
C++ 代码:
```cpp
#include <iostream>
#include <stack>
using namespace std;
int main()
{
int n;
cin >> n;
stack<char> stk;
while (n -- )
{
char c;
cin >> c;
if (c == '(') stk.push(c);
else
{
if (stk.empty())
{
cout << "NO" << endl;
return 0;
}
stk.pop();
}
}
if (stk.empty()) cout << "YES" << endl;
else cout << "NO" << endl;
return 0;
}
```
阅读全文