题解 | #查找两个字符串a,b中的最长公共子串#
查找两个字符串a,b中的最长公共子串
http://www.nowcoder.com/practice/181a1a71c7574266ad07f9739f791506
str1=input()# 较短字符串
str2=input()# 较长字符串
if len(str1)>len(str2):
temp=str1
str1=str2
str2=temp
# 用找最长回文子串的方法
max_lenth=0
max_part=''
for wz in range(len(str1)):
for wy in range(wz+1,len(str1)):
if str1[wz:wy+1] in str2 and len(str1[wz:wy+1])>max_lenth:# 更新max_lenth与 max_part
max_lenth=len(str1[wz:wy+1])
max_part=str1[wz:wy+1]
print(max_part)
str2=input()# 较长字符串
if len(str1)>len(str2):
temp=str1
str1=str2
str2=temp
# 用找最长回文子串的方法
max_lenth=0
max_part=''
for wz in range(len(str1)):
for wy in range(wz+1,len(str1)):
if str1[wz:wy+1] in str2 and len(str1[wz:wy+1])>max_lenth:# 更新max_lenth与 max_part
max_lenth=len(str1[wz:wy+1])
max_part=str1[wz:wy+1]
print(max_part)
【牛客站内】华为机试题—中等 文章被收录于专栏
【牛客站内】华为机试题练习记录