题解 | #abb#
abb
https://www.nowcoder.com/practice/0a8bbf8b9b5b4280957849ef4f240f07
解题思路图:
#include <iostream>
using namespace std;
int f[26],g[26];
int n;
const int N = 1e5 + 10;
int dp[N];
int main() {
cin >> n;
string s;
cin >> s;
for(int i =0 ; i < n;i++)
{
int x = s[i] - 'a';
dp[i] = f[x ];
f[x] = f[x] + i - g[x];
g[x] += 1;
}
long long ret = 0;
for(int i =0 ;i < n;i++)
{
ret += dp[i];
}
cout << ret << endl;
return 0;
}
// 64 位输出请用 printf("%lld")
腾讯成长空间 5958人发布
