#include <bits/stdc++.h>
using namespace std;
int l, wq[30];
long long sum[100005], ans;
char s[100005];
vector<int> v[100005];
int main() {
  for (int i = 0; i < 26; i++) cin >> wq[i];
  getchar();
  gets(s + 1);
  l = strlen(s + 1);
  for (int i = 1; i <= l; i++) {
    v[s[i] - 'a'].push_back(i);
    sum[i] = wq[s[i] - 'a'];
    sum[i] = sum[i] + sum[i - 1];
  }
  for (int i = 0; i < 26; i++) {
    map<long long, int> my_map;
    for (int j = 0; j < v[i].size(); j++) {
      ans = ans + my_map[sum[v[i][j] - 1]];
      my_map[sum[v[i][j]]]++;
    }
  }
  cout << ans;
  return 0;
}
