这代码哪里有问题啊?
#include<bits/stdc++.h>
using namespace std;
int lena,lenb,dp[2005][2005];
char a[2005],b[2005];
int dfs(int i,int j){
if(dp[i][j]){
return dp[i][j];
}
if(i==0){
return dp[i][j]=j;
}
if(j==0){
return dp[i][j]=i;
}
int flag=1;
if(a[i]==b[j]){
flag=0;
}
return dp[i][j]=min(min(dfs(i-1,j)+1,dfs(i,j-1)+1),dfs(i-1,j-1)+flag);
}
int main(){
ios::sync_with_stdio(false);
gets(a);
gets(b);
cout<<dfs(strlen(a),strlen(b));
return 0;
}//服了,重构*3
对着题解改一小时了,我裂开了。
提交记录