/* The Great Template of Salazar Slytherin */ #include <bits/stdc++.h> using namespace std; #define rep(i,n) for(i=0; i<n; i++) #define repl(i,n) for(i=1; i<=n; i++) #define sz(x) (int) x.size() #define pb push_back #define all(x) x.begin(),x.end() #define uu first #define vv second #define mem(x, y) memset(x, y, sizeof(x)); #define sdi(x) scanf("%d", &x) #define sdii(x, y) scanf("%d %d", &x, &y) #define sdiii(x, y, z) scanf("%d %d %d", &x, &y, &z) #define sdl(x) scanf("%lld", &x) #define sdll(x, y) scanf("%lld %lld", &x, &y) #define sdlll(x, y, z) scanf("%lld %lld %lld", &x, &y, &z) #define sds(x) scanf("%s", x) #define pfi(x) printf("%d\n", x) #define pfii(x, y) printf("%d %d\n", x, y) #define pfiii(x, y, z) printf("%d %d %d\n", x, y, z) #define pfl(x) printf("%lld\n", x) #define pfll(x, y) printf("%lld %lld\n", x, y) #define pflll(x, y, z) printf("%lld %lld %lld\n", x, y, z) #define eps 1e-9 #define OK printf("ok\n") #define DB(x) cout << #x << " = " << x << endl; /// Tanzir #define FRE(i,a,b) for(i = a; i <= b; i++) #define FRL(i,a,b) for(i = a; i < b; i++) #define un(x) x.erase(unique(all(x)), x.end()) #define sf(n) scanf("%d", &n) #define sff(a,b) scanf("%d %d", &a, &b) #define sfff(a,b,c) scanf("%d %d %d", &a, &b, &c) #define sl(n) scanf("%lld", &n) #define sll(a,b) scanf("%lld %lld", &a, &b) #define slll(a,b,c) scanf("%lld %lld %lld", &a, &b, &c) #define D(x) cout<<#x " = "<<(x)<<endl #define DBG printf("Hi\n") #define PI acos(-1.00) #define xx first #define yy second typedef double db; typedef long long LL; typedef unsigned long long ULL; typedef pair <int, int> pii; typedef pair <long long , long long > pll; inline int setBit(int N, int pos) { return N=N | (1<<pos); } inline int resetBit(int N, int pos) { return N= N & ~(1<<pos); } inline bool checkBit(int N, int pos) { return (bool)(N & (1<<pos)); } //int kx[] = {+2, +1, -1, -2, -2, -1, +1, +2}; //int ky[] = {+1, +2, +2, +1, -1, -2, -2, -1}; //Knight Direction //int fx[] = {+0, +0, +1, -1, -1, +1, -1, +1}; //int fy[] = {-1, +1, +0, +0, +1, +1, -1, -1}; //Four & Eight Direction int arr[28]; int main() { // freopen("in.txt","r",stdin); // freopen("out.txt","w",stdout); int i, mx=0; string s; rep(i, 26) { sdi(arr[i]); } cin >> s; for(auto x:s) { mx = max(mx, arr[x-'a']); } pfi(mx*sz(s)); return 0; }