p. 382
str1=input()
str2=input()
n=len(str1)
m=len(str2)
d=[[0]*(m+1) for _ in range(n+1)]
for i in range(1,n+1):
d[i][0]=i
for i in range(1,m+1):
d[0][i]=i
for i in range(1, n+1):
for j in range(1, m+1):
# 문자가 같다면, 왼쪽 위의 수를 그대로 대입
if str1[i-1]==str2[j-1]:
d[i][j]=d[i-1][j-1]
# 문자가 다르다면, 3가지 경우 중에서 최솟값 찾기
else:
d[i][j]=1+min(d[i][j-1], d[i-1][j], d[i-1][j-1])
print(d[n][m])
삽입 : 왼쪽 + 1
삭제 : 위쪽 + 1
교체 : 왼쪽 위 + 1
댓글