#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int MAXN = 5e3 + 5;
const int INF = 0x3f3f3f3f;
#define DEBUG(x) cout << (x) << '\n'
#define fi first
#define se second

char s[MAXN];
int n;
void run(){
    cin >> n >> s + 1;
    int ans = 0;
    for(int i = 1; i < n; i++){
        int f1 = 0, f2 = 0;
        for(int j = i; j <= n; j++){
            f1 += s[j] == 'A';
            f2 += s[j] == 'C';
            f1 -= s[j] == 'T';
            f2 -= s[j] == 'G';
            ans += f1 == 0 && f2 == 0;
        }
    }
    DEBUG(ans);
}
int main(){
#ifdef Irene
    freopen("in.txt", "r", stdin);
#endif // Irene
    ios_base::sync_with_stdio(false);

    run(); return 0;
}

#include <iostream>
#include <string>
#include <algorithm>
#include <vector>
#include <map>
#include <cmath>
#include <queue>
#include <deque>
#include <set>
#include <iomanip>
#include <utility>
typedef long long ll;
typedef long double ld;
using namespace std;

int sum[5010][4];

int main() {
	int N;
	string S;
	cin >> N >> S;
	for(int i=0; i<4; ++i) sum[0][0]=0;
	for(int i=0; i<N; ++i){
		for(int j=0; j<4; ++j) sum[i+1][j]=sum[i][j];
		if(S[i]=='A') ++sum[i+1][0];
		else if(S[i]=='T') ++sum[i+1][1];
		else if(S[i]=='C') ++sum[i+1][2];
		else ++sum[i+1][3];
	}
	int ans=0;
	for(int i=0; i<N; ++i){
		for(int j=i+1; j<=N; ++j){
			if(sum[j][0]-sum[i][0]==sum[j][1]-sum[i][1] && sum[j][2]-sum[i][2]==sum[j][3]-sum[i][3]) ++ans;
		}
	}
	cout << ans << endl;
	return 0;
}