Bài toán (Codefight): Viết hàm đảo ngược các ký tự trong ngoặc đơn (có thể lồng nhau) trong chuỗi đầu vào.
Mọi người giúp em với ạ,không biết sai ở trường hợp nào!
std::string reverseInParentheses(std::string S) {
int l;int dem;int mo;int dong;int d=-1;
bool kt=true;
while(kt==true)
{d=0;
for(int i=S.length()-1;i>=0;i--)
if(S[i]=='(')
{ d=1;mo=i;
for(int j=i+1;j<S.length();j++)
if(S[j]==')')
{
dong=j;
break;
}
S.erase(S.begin()+dong);
S.erase(S.begin()+mo);
dong-=2;
break;
}
if(d==1)
{
dem=-1;
l=dong-mo;
for(int j=mo;j<=mo+l/2;j++)
{dem+=1;
char t=S[j];
S[j]=S[dong-dem];
S[dong-dem]=t;
}
}
if(d==0) break;
}
}

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?