Существующий список а, а из элементов являются такими, как [X, Y] формат массива, представитель части цифрового интервала, например, [1,3] представляет собой любое число в диапазоне от 1 до 3 из
Анализируя данный интервал новой цифровой new_element (например .: [10, 25]) не могут быть добавлены в список, возвращает истину или ложь
Требовать любые добавил в список нового диапазона номеров, вы должны удовлетворять следующие условия:
- Новый добавленный цифровой интервал [х, у], у больше х должно быть
- Список номеров каждый интервал площадь перекрытия не может существовать
- Так, например [3, 5] и [7, 8] не перекрываются, но [3,5] и [4,6] перекрывающиеся области (примечание: что между [3, 5] и [5, 6] это не перекрываются)
Перекрытие интервалы, которые могут образовывать только четыре
a = [
[6, 6.9],
[3, 5.6],
[12, 22],
[37.5, 97.8]
]
def can_add_in(a, new_element):
# y 必须大于 x
if new_element[1] <= new_element[0]:
return False
# 和已存在的每个区间进行比较
for i in a:
# print(i)
# 1 和 4 的情况:新区间的起始在已有区间内
if i[1] > new_element[0] and i[0] <= new_element[0]:
return False
# 2 和 3 的情况:已有区间的起始在新区间内
elif i[0] >= new_element[0] and i[0] < new_element[1]:
return False
return True
print(can_add_in(a, [6.9, 12]))