#include<bits/stdc++.h>
using namespace std;
int t,n,ans;
bool judge(char a[]){
stack<char>s;
for(int i=1;i<=n;i++){
if(a[i]==')'){
if(s.top()=='(') s.pop();
s.push(a[i]);
}
else s.push(a[i]);
}
cout<<s.top();
if(!s.empty()) return 0;
else return 1;
}
int main(){
cin>>t;
while(t--){
scanf("%d",&n);
char a[20000010];
for(int i=1;i<=n;i++) scanf("%s",a[i]);
bool fl[2000010];
if(judge(a)) fl[1]=1;
//cout<<ans;
for(int i=2;i<=n;i++){
//cout<<judge(a);
a[0]=a[n];
for(int j=n-1;j>=0;j--)
a[j+1]=a[j];
if(fl[i-1]){
fl[i]=0;
ans++;
continue;
}
if(judge(a)) fl[i]=1;
}
printf("%d",ans);
}
return 0;
}
编译器说我这段代码爆栈了,对这个没概念。求debug