45
查看原帖
45
1401899
aikepudelizhi楼主2024/8/29 00:29
#include<iostream>
using namespace std;
string a,b;
long long dp[3000][3000];
int main(){
    cin>>a>>b;
    for(int i=0;i<=a.size();i++){
        dp[i][0]=i;
    }
    for(int j=0;j<=b.size();j++){
        dp[0][j]=j;
    }
    for(int i=1;i<=a.size();i++){
        for(int j=1;j<=b.size();j++){
            if(a[i]==b[j]){
                dp[i][j]=dp[i-1][j-1];
            }
            else{
                dp[i][j]=min(dp[i-1][j],min(dp[i][j-1],dp[i-1][j-1]))+1;
            }
        }
    }
    cout<<dp[a.size()][b.size()];
    return 0;
}
2024/8/29 00:29
加载中...