我在edabit上发现了此问题的解决方案,但我无法解决。
def count_overlapping(intervals, point):
return sum(min(x)<=point<=max(x) for x in intervals)
这是问题文字
创建一个函数,该函数接受间隔列表并返回 许多间隔与给定点重叠。
如果点存在于内部,则间隔与特定点重叠 间隔,或在间隔的边界上。例如点3 与间隔[2,4](在内部)和[2,3](在 边界)。
答案 0 :(得分:1)
这不是问这个问题的正确地方,但是我还是会回答。
def count_overlapping(intervals, point):
return sum(min(x)<=point<=max(x) for x in intervals)
让我们把它拆开。它的作用是:
lst = [min(x)<=point<=max(x) for x in intervals]
return sum(lst)
您可以这样重写:
lst = []
for x in intervals:
if min(x) <= point <= max(x):
lst.append(True)
else:
lst.append(False)
return sum(lst)
之所以可行,是因为True
被计为1
,而False
被计为0
。