Мой вопрос очень похож на это , однако это не одно и то же.
Мне нужно выяснить, перекрываются ли две серии диапазонов, диапазоны могут иметь заданный конец, но могут также go до бесконечности.
Вот пример того, что я ищу:
У меня есть две серии диапазонов, определяемых следующими параметрами:
Ряд диапазона 1:
RangeStart: 10
RangeEnd: 20
RepeatEvery: 50
RepeatTill: Infinity
Ряд диапазона 2:
RangeStart: 0
RangeEnd: 5
RepeatEvery: 20
RepeatTill: 100
Ряд выглядит следующим образом:
Series 1: (10-20), (60-70), (100-110), ..., ...
Series 2: (0-5), (20-25), (40-45), (60-65), (80-85)
1----[XX]------------------------------------[XX]------------------------...
2[]-------------[]-------------[]------------[]-------------[]
Мы можем видеть, что эти конкретные ряд диапазонов перекрывается в диапазоне S1: 60-70, S2: 60-65. Это означает, что алгоритм вернет true.
Что такое быстрый алгоритм, который реализует это?
Я использую c ++