问题标题: 酷町堂:4027 字符串的距离 60分

0
0
已解决
王光裕
王光裕
资深光能
资深光能

各位大佬,康一康,我的代码哪里错了??

#include<bits/stdc++.h>
using namespace std;
int f[2005][2005];//用f[i][j]表示第一个字符串到第i个,第二个字符串到第j个时的最小距离
int main(){
    string a,b;
    int k;
    getline(cin,a);
    getline(cin,b);
    cin>>k;
    int n=a.length(),m=b.length();
    memset(f,0x3f,sizeof(f));
    for(int i=1;i<=n;i++)
        f[i][0]=i*k;
    for(int j=1;j<=m;j++)
        f[0][j]=j*k;
    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=m;j++)
        {
            f[i][j]=min(f[i][j],f[i][j-1]+k);
            f[i][j]=min(f[i][j],f[i-1][j]+k);
            f[i][j]=min(f[i][j],f[i-1][j-1]+abs(a[i-1]-b[j-1]));
        }
    }
    cout<<f[n][m];
    return 0;
}

@董子墨   @包涵宇

王光裕在2020-08-15 17:15:40追加了内容


0
已采纳
董子墨
董子墨
中级天翼
中级天翼

边界循环从0开始

我要回答