为什么我这个错了
查看原帖
为什么我这个错了
1063799
chenshenqi楼主2024/4/6 12:27
#include <bits/stdc++.h>
using namespace std;
char a[1005],b[1005],as,bs;
int f[1005][1005];
void dp(){
	for (int i=1; i<=as; i++) f[i][0]=i;
	for (int i=1; i<=bs; i++) f[0][i]=i;
	for (int i=1; i<=as; i++){
		for (int j=1; j<=bs; j++){
		    if (a[i-1]==b[j-1]){
				f[i][j]=f[i-1][j-1];
				continue;
			}
			f[i][j]=min(min(f[i-1][j],f[i][j-1]),f[i-1][j-1])+1;
		}
	}
}
int main(){
    ios::sync_with_stdio(false);
    cin.tie(NULL);
    cout.tie(NULL);
    scanf("%s %s",&a,&b);
    as=strlen(a);
    bs=strlen(b);
    dp();
    cout << f[as][bs];
	return 0;
}

@Chenxinrui20120304

我oj过了,为什么这个过不去啊

帮我看看

2024/4/6 12:27
加载中...