#include <iostream>
#include <unordered_map>
#include <vector>
using namespace std;
int main() {
int n;
cin >> n;
unordered_map<char,vector<int> > m; // 后一维度是下标
string s;
cin >> s;
for(int i = 0;i < n ;i ++){
m[s[i]].push_back(i);
}
long long sum = 0;
for(auto it : m){
vector<int> v = it.second;
for(int i = 0;i < v.size();i ++){
long long j = v[i] - i;//表示前面的下标中有几个a
long long t = v.size() - i -1;//用于计算成对
sum += j * t;
}
}
cout << sum;
}
// 64 位输出请用 printf("%lld")



京公网安备 11010502036488号