#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int maxn=3e5+10;
int q[maxn];
vector<int>V;
int main()
{
int n;
scanf("%d",&n);
for(int i=0;i<n;i++){
string s;
cin>>s;
int len=s.size(),t,tmp;
tmp=t=0;
for(int j=0;j<len;j++){
if(s[j]=='(')tmp++;
else tmp--;
t=min(t,tmp);
}
if(t==0){
V.push_back(tmp);
}
if(t<=0 && t==tmp){
q[-tmp]++;
}
}
ll ans=0;
for(int i=0;i<V.size();i++){
ans+=q[V[i]];
}
cout<<ans<<'\n';
return 0;
}
Bracket Sequences Concatenation Problem(括号配对)
最新推荐文章于 2024-08-23 07:41:34 发布