#include<bits/stdc++.h>
using namespace std;
const int N=1e5;
int c,T;
string s;
int a[N],v[10];
int main()
{
scanf("%d%d",&c,&T);
while(T--)
{
long long res=0,ans=0;
memset(a,0,sizeof a);
cin>>s;int len=s.size();
for(int i=1;i<=9;i++) scanf("%d",&v[i]);
for(int i=1;i<=len;i++)
{
a[i]=s[i-1]-'0';
for(int j=1;j<=6;j++)
{
if(i>=j)
{
long long x=0,y=0;
for(int k=j;k>=1;k--) x=x*10+a[i-k+1],y=y+v[a[i-k+1]];
ans=max(ans,y-x);
}
else break;
}
}
for(int i=1;i<=len;i++) res+=v[a[i]];
res-=ans;
printf("%lld\n",res);
}
return 0;
}