#include<bits/stdc++.h>
using namespace std;
string stk,cl;
unordered_map<string,int> mp;
int n;
long long ans;
string str;
int main()
{
scanf("%d",&n);
cin>>str;
mp[cl]=1;
for(int i=0;i<n;i++)
{
int len=stk.length();
if(len!=0&&stk[len-1]==str[i])
{
//stk.erase(stk.end() - 1);
stk.erase(len-1,1);
//len--;
ans+=mp[stk];
}
else
{
stk+=str[i];
//len++;
ans+=mp[stk];
}
mp[stk]++;
}
printf("%lld",ans);
return 0;
}
这个代码有正确性吗 我感觉没有却能mle90 能改对吗