11pts求调
  • 板块P2758 编辑距离
  • 楼主woscxk
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/9/30 12:08
  • 上次更新2024/9/30 16:38:40
查看原帖
11pts求调
1245629
woscxk楼主2024/9/30 12:08
#include<bits/stdc++.h>
using namespace std;
int main(){
    string a,b;
    cin>>a>>b;
	int n=min(a.length(),b.length());
    int dp[n+1][n+1];
    for(int i=0;i<=n;i++){
        for(int j=0;j<=n;j++){
            if(i==0){
                dp[i][j]=j;
            }else if(j==0)dp[i][j]=i;
            else if(a[i]==b[j]){
                dp[i][j]=dp[i-1][j-1];
            }else{
                dp[i][j]=dp[i-1][j-1]+1;
            }
        }
	}
	if(a.length()>b.length())cout<<dp[n][n]+a.length()-b.length();
    else cout<<dp[n][n]+b.length()-a.length();
}
2024/9/30 12:08
加载中...