原题链接:数组的距离
解题思路:
注意事项:
参考代码:
m, n = map(int, input().strip().split())
f = list(eval(input().replace(' ', ',')))
g = list(eval(input().replace(' ', ',')))
i = 0
j = 0
minn = abs(max(f) - min(g))
# 判断f,g中是否含有相同元素,如果有,则距离为0
def fun(f, g, i):
if i == len(g):
return 0
if f[i] in g:
return 1
else:
return fun(f, g, i + 1)
# 若f,g中无相同元素,则利用abs(max(f)-g[i])获取最小值
def fun2(maxx, g, minn, j):
temp = abs(maxx - g[j])
if temp > minn:
t = minn
minn = temp
temp = t
if j == len(g) - 1:
return temp
else:
return fun2(maxx, g, temp, j + 1)
if fun(f, g, i):
print('0')
else:
maxx = max(f)
print(fun2(maxx, g, minn, j))0.0分
0 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复