#include <bits/stdc++.h> #define rep(i,n) for(i=1;i<=n;i++) #define Rep(i,n) for(i=0;i<n;i++) #define For(i,a,b) for(i=a;i<=b;i++) #define pb(x) push_back(x) #define sz(x) x.size() #define mem(ara,val) memset(ara,val,sizeof(ara)) #define eps 1e-9 #define Debug(x) cout << x << endl #define si(x) scanf("%d",&x) #define sii(x,y) scanf("%d %d",&x,&y) #define siii(x,y,z) scanf("%d %d %d",&x,&y,&z) #define sl(x) scanf("%lld",&x) #define sll(x,y) scanf("%lld %lld",&x,&y) #define slll(x,y,z) scanf("%lld %lld %lld",&x,&y,&z) #define ss(ch) scanf("%s",ch) #define pi(x) printf("%d",x) #define pii(x,y) printf("%d %d",x,y) #define piii(x,y,z) printf("%d %d %d",x,y,z) #define pl(x) printf("%lld",x) #define pll(x,y) printf("%lld %lld",x,y) #define plll(x,y,z) printf("%lld %lld %lld",x,y,z) #define ps(ch) printf("%s",ch) #define Afridi 0 #define NL printf("\n") #define debug(x,y) cout << x << " " << y << "\n" #define Max 1000005 #define INF INT_MAX #define mod 1000000007ll #define FI freopen("in.txt","r",stdin) #define FO freopen("out.txt","w",stdout) #define PI 3.14159265358979323846 #define gamma 0.57721566490153286060651209 typedef long long LL; typedef unsigned long long ULL; using namespace std; LL bigmod(LL b,int p) { if(p == 0)return 1; LL my = bigmod(b,p/2); my*=my; my%=mod; if(p & 1)my*=b,my%=mod; return my; } int setb(int n,int pos) { return n=n | (1 << pos); } int resb(int n,int pos) { return n=n & ~(1 << pos); } bool checkb(int n,int pos) { return (bool)(n & (1 << pos)); } LL ara[100]; char str[100]; int main() { LL i; Rep(i,26)sl(ara[i]); ss(str); LL len = strlen(str),mx = 0; Rep(i,len) { mx = max(mx,ara[ str[i] - 'a' ]); } pl( mx * len );NL; return 0; }