#include <bits/stdc++.h>
using namespace std;
const int maxn = 2000200;
#define ull unsigned long long
int n;
string s;
int nxt[maxn],dp[maxn];
ull ans;
int main(){
cin >> n >> s;
s = " " + s;
int t = 1;
for(int i=1;i<=n;i++){
t = i-1;
while(t > 0){
if(s[t] == s[i]) break;
t = nxt[t];
if(t) t--;
}
nxt[i] = t;
if(t) dp[i] = dp[t-1] + 1;
ans += dp[i];
}
cout<<ans;
return 0;
}