мой код для проблемы с расстоянием редактирования, но я получаю правильный ответ, когда использую закомментированную строку вместо строки под ней - PullRequest
0 голосов
/ 26 мая 2020
s=input()
m=len(s)
s2=input()
n=len(s2)

так в чем в основном разница между res=[[0 for x in range(n + 1)] for x in range(m + 1)] и res=[[0]*(n+1)]*(m+1), когда оба создают матрицу (m + 1) X (n + 1), но res=[[0 for x in range(n + 1)] for x in range(m + 1)] дает правый ответ, а res=[[0]*(n+1)]*(m+1) не

for i in range(m+1):
    for j in range(n+1):
        if i==0:
            res[i][j]=j
        if j==0:
            res[i][j]=i
        if s[i-1]==s2[j-1]:
            res[i][j]=res[i-1][j-1]
        else:
            res[i][j]=min(res[i-1][j],res[i][j-1],res[i-1][j-1])+1

print(res[m][n])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...