n, m = map(int,raw_input().split(" ")) S = raw_input() T = raw_input() dp = [[0 for i in xrange(n+1)] for j in range(m+1)] for i in xrange(n+1): dp[0][i] = i for i in xrange(1,m+1): dp[i][0] = i for i in xrange(1,m+1): for j in xrange(1,n+1): dp[i][j] = min(dp[i][j-1]+1, dp[i-1][j]+1, dp[i-1][j-1]+(T[i-1]!=S[j-1])) print dp[m][n]