Forrest


私信TA

用户名:dotcpp0717441

访问量:1672

签 名:

等  级
排  名 145
经  验 7156
参赛次数 1
文章发表 79
年  龄 0
在职情况 教师
学  校 优学乐程
专  业

  自我简介:

解题思路:f[i][j]表示i长度的字符串变化到j长度字符串的最短距离

注意事项:

参考代码:

#include<iostream>
using namespace std;
const int N = 2e3 + 10;
int f[N][N];
int main()
{
	string s1, s2;
	cin >> s1 >> s2;
	
	for(int i = 1; i <= s1.size(); i ++) f[i][0] = i;
	for(int i = 1; i <= s2.size(); i ++) f[0][i] = i;
	for(int i = 1; i <= s1.size(); i ++)
		for(int j = 1; j <= s2.size(); j ++)
		{
			if(s1[i-1] == s2[j-1]) 
				f[i][j] = f[i-1][j-1];
			else
				f[i][j] = min(min(f[i-1][j],f[i][j-1]),f[i-1][j-1]) + 1; 
		}
	cout << f[s1.size()][s2.size()];
	return 0;
}


 

0.0分

1 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换

万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区