#include<iostream>
#include<vector>
using namespace std;
int main(){
    string s1,s2;
    cin>>s1>>s2;
    int n1 = s1.length();
    int n2 = s2.length();
    int del,ins,up;
    cin>>del>>ins>>up;
    vector<vector<int>>dp(n1+1,vector<int>(n2+1,0));
    for(int i=0; i<n1; i++){
        dp[0][i] = i*del;
        dp[i][0] = i*ins;
    }
    for(int i=1;i<n1; i++){
        for(int j=1; j<n2; j++){
            if(s1[i-1] == s2[j-1]){
                dp[i][j] = dp[i-1][j-1];
            }
            else{
                int d = dp[i][j-1]*del;
                int in = dp[i-1][j-1]*ins;
                int u = dp[i-1][j-1]*up;
                dp[i][j] = min({d,in,u});
            }
        }
    }
    cout<<dp[n1][n2];
}