#include<bits/stdc++.h>
using namespace std;
char a[2000],b[2000];
int ans[2000][2000];
int main(){
int al=0,bl=0;
for(char c=getchar();c<='z'&&c>='a';c=getchar())a[++al]=c;
for(char c=getchar();c<='z'&&c>='a';c=getchar())b[++bl]=c;
for(int i=1;i<=al;i++)ans[i][0]=i;
for(int i=1;i<=bl;i++)ans[0][i]=i;
for(int i=1;i<=al;i++){
for(int j=1;j<=bl;j++){
if(a[i]==b[j])ans[i][j]=min(ans[i-1][j-1],min(ans[i-1][j],ans[i][j-1])+1);
else ans[i][j]=min(ans[i-1][j-1],min(ans[i-1][j],ans[i][j-1]))+1;
}
}
printf("%d",ans[al][bl]);
return 0;
}
本机运行没有问题啊