#include <iostream>
#include <string.h>
#include <stdio.h>
using namespace std;
void HHHString(int m,int n,char *a,char *b,int (*c)[50]);
int min(int a,int b,int c) {
int t = a < b ? a : b;
return t < c ? t : c;
}
int main( )
{
char a[50],b[50];
cin>>a;
cin>>b;
int m=strlen(a);
int n=strlen(b);
int c[50][50];
HHHString(m,n,a,b,c);
}
void HHHString(int m,int n,char *a,char *b,int (*c)[50])
{
int i,j;
c[0][0]=0;
for(i=0;i<=m;i++) c[i][0]=i;
for(i=0;i<=n;i++) c[0][i]=i;
for(i=1;i<=m;i++)
for(j=1;j<=n;j++)
{
int cost = (a[i] == b[j] ? 0 : 1);
int x = c[i-1][j] + 1;
int y = c[i][j-1] + 1;
int z = c[i-1][j-1] + cost;
c[i][j] = min(x,y,z);
}
cout<<c[m][n];
}
#include #include #include using namespace std;void HHHString(int m,int n,char *a,char *b,int (*c)[50]);int min(int a,int b,int c) { int t = a < b ? a : b; return t < c ? t :