代码:
#include <bits/stdc++.h>
using namespace std;
int main()
{
stack<pair<char,int>> stk;
string a;
cin>>a;
for(int i=0;i<a.length();i++){
if(a[i]=='('||a[i]=='['){
stk.push(make_pair(a[i],i));
}else{
if(a[i]==']'&&stk.top().first=='['){
stk.pop();
}else if(a[i]==')'&&stk.top().first=='('){
stk.pop();
}else{
a.insert(i,((a[i]==')')?"(":"["));
i++;
}
}
}
while(!stk.empty()){
auto tmp=stk.top();
stk.pop();
if(tmp.first=='['){
a.insert(tmp.second+1,"]");
}else{
a.insert(tmp.second+1,")");
}
}
cout<<a;
return 0;
}