解题思路:
(1)动态规划
class Solution {
public:
int minEditCost(string s1, string s2, int ic, int dc, int rc) {
int m=s1.length(),n=s2.length();
vector<vector<int> > v(m+1,vector<int>(n+1,0));
for(int i=0;i<m+1;i++) {
for(int j=0;j<n+1;j++) {
if(i==0 && j!=0) v[i][j]=j*ic;
else if(i!=0 && j==0) v[i][j]=i*dc;
else if(i==0 && j==0) v[i][j]=0;
else if(s1[i-1]==s2[j-1]) v[i][j]=v[i-1][j-1];
else v[i][j]=min(min(v[i-1][j]+dc,v[i][j-1]+ic),v[i-1][j-1]+rc);
}
}
return v[m][n];
}
};