Winfrom 二三事
阿新 • • 發佈:2021-12-21
給出兩個字串first和second,只能對其中一個字串操作一次或0次,操作可以是增、刪、改,使兩個字串元素一致
題解:
這裡可以分為三種情況,分別是:
1、兩個字串長度相等
兩個字串中元素有0或1處不相同
2、兩個字串長度相差1
兩個字串中元素有一個不在另一箇中,位置可能是前、中、後
3、兩個字串長度相差大於1
直接pass掉
num = 0
first = input('請輸入字串1:')
second = input('請輸入字串2:')
x_num = abs(len(first)-len(second))
if x_num >1:
print(num == 1)
elif x_num == 0:
for i in range(len(first)):
if first[i] == second[i]:
continue
else:
num += 1
print(num in (0,1))
elif x_num == 1:
p1 = 0
p2 = 0
while True:
if p1 == len(first) or p2 == len(second):
break
if first[p1] == second[p2]:
p1 += 1
p2 += 1
else:
if len(first) > len(second):
p1 += 1
num += 1
elif len(first) < len(second):
p2 += 1
num += 1
print(num in (0,1))