n, m = map(int,raw_input().split(" ")) S = list(raw_input()) T = list(raw_input()) dp = [[1000 for i in range(n+1)] for j in range(m+1)] for i in range(n+1): dp[0][i] = i for i in range(1,m+1): dp[i][0] = i for i in range(1,m+1): for j in range(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]