#include<bits/stdc++.h>
using namespace std;
#define ll long long

ll mod=(ll)1e18+9, bas=1e9+7, inv;

ll mul(ll x,ll y){
    ll t=0;
    for (;y;y>>=3,x=x*8%mod)
        t=(t+x*(y&7))%mod;
    return t;
}

ll K(ll x,ll y=mod-2){
    if (y<0) return K(K(x),-y);
    ll t=1;
    for (;y;y>>=1,x=mul(x,x))
        if (y&1) t=mul(t,x);
    return t;
}

ll n, ans, p[505000], f[505000];
char s[505000];
map<ll,ll>mp;

int main(){
    cin>>n>>s+1;
    p[0]=1; inv=K(bas);
    for (int i=1;i<=n;++i){
        p[i]=p[i-1]; f[i]=f[i-1];
        if (s[i]=='<') p[i]=mul(p[i],inv);
        if (s[i]=='>') p[i]=mul(p[i],bas);
        if (s[i]=='+') f[i]=(f[i]+p[i])%mod;
        if (s[i]=='-') f[i]=(f[i]-p[i]+mod)%mod;
        ++mp[f[i]];
    }
    for (int i=0;i<n;++i){
        ans+=mp[(mul(f[n],p[i]) + f[i])%mod];
        --mp[f[i+1]];
    }
    cout<<ans<<endl;
}