文章
4
粉丝
29
获赞
4
访问
3.5k
数组+栈,不管是什么先在数组中记录对应字符,即'('记录'$',')'记录'?',不是这两种记录空格。当字符串是右括号时,先标记,然后查看栈顶(同时栈不为空),栈顶为左括号时,就从字符串该位置向前遍历找到第一个记录'$'的位置同时将左括号和右括号的位置都改成空格。
#include <bits/stdc++.h>
using namespace std;
int main(){
string str;
while(getline(cin,str)){
char a[100];
stack<char> s;
int i;
for(i=0;i<str.length();i++){
if(str[i]!='('&&str[i]!=')'){
a[i]=' ';
}
else if(str[i]=='('){
s.push(str[i]);...
登录后发布评论
暂无评论,来抢沙发