#include<bits/stdc++.h>
using namespace std;
int del(string n,vector<int>&costs)
{
int length=n.size();
vector<int>dp(length+1,0);
for(int i=1;i<=length;i++){
int dg=n[i-1]-'1';
dp[i]=dp[i-1]+costs[dg];
dp[i]=min(dp[i],dp[i-1]+stoi(n.substr(i-1)));
}
return dp[length];
}
int main()
{
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
int c,t;
cin>>c>>t;
while(t--){
string n;
cin>>n;
vector<int>costs(9);
for (int i=0;i<9;i++){
cin>>costs[i];
}
int res=del(n,costs);
cout<<res<<endl;
}
return 0;
}
显示stoi报错了……