解题思路:用双指针遍历两个数组,来找最小距离,如果此时左指针指向的元素小于有指针指向的元素,则让左指针加1,否则让右指针加1,如果两者指向的元素一样,则已经到了最小距离,跳出循环。
注意事项:
参考代码:
import math m,n=map(int,input().split()) m=list(map(int,input().split())) n=list(map(int,input().split())) m_p,n_p=0,0 gap=1000 while m_p<len(m) and n_p<len(n): gap=min(math.fabs(m[m_p]-n[n_p]),gap) if m[m_p]<n[n_p]: m_p=m_p+1 elif m[m_p]>n[n_p]: n_p=n_p+1 else: break print(int(gap))
0.0分
0 人评分