#include<iostream>
#include<queue>
#include<vector>
#include<stack>
#include<algorithm>
using namespace std;
int main(){
string s1,s2;
cin>>s1>>s2;
static int a[1010][1010]={0};
int len1=s1.size(),len2=s2.size();
for(int i=0;i<=len1;i++) a[i][0]=i;
for(int j=0;j<=len2;j++) a[0][j]=j;
for(int i=1;i<=len1;i++){
for(int j=1;j<=len2;j++){
int fz=s1[i-1]==s2[j-1]?0:1;
a[i][j]=min(a[i-1][j],a[i][j-1])+1;
a[i][j]=min(a[i][j],a[i-1][j-1]+fz);
}
}
cout<<a[len1][len2];
return 0;
}
51Nod 1183 编辑距离 dp
最新推荐文章于 2022-02-26 16:52:46 发布