-
POJ-括号画家
题目链接:括号画家‘
-
思路
写过一篇类似的:STL-栈stack(例题:括号匹配)
遇到左括号就入栈
遇到右括号时检测栈顶是否为相应的左括号
是的话出栈该左括号‘
检测最后状态是否为空栈,是的话序列美观
-
代码
#include<iostream>
#include<stack>
#define MAXLENGTH 10005
using namespace std;
int main()
{
char Input[MAXLENGTH];
stack<char> KuoHao_Match;
int i = 0;
cin >> Input;
while (1)
{
if (Input[i] == '\0')
break;
switch (Input[i])
{
case '{':
case '(':
case '[':
KuoHao_Match.push(Input[i]);
break;
case '}':
if (!KuoHao_Match.empty() && KuoHao_Match.top() == '{')
KuoHao_Match.pop();