Напишите программу, которая будет определять, пересекаются ли два прямоугольника. Если они пересекаются, вернуть прямоугольник, образованный их пересечением. (Предположим, что стороны прямоугольников параллельны осям X и Y. Для справки см. рис. 1.)
Подсказка: подумайте о размерах X и Y независимо друг от друга.
Решение
Существует множество различных способов, которыми прямоугольники могут перекрываться, как показано на рис. 1, поэтому более четкий подход состоит в том, чтобы определить, когда прямоугольники НЕ пересекаются. Например, если X-диапазон значений для одного прямоугольника не включает никаких значений из X-диапазона второго прямоугольника, то они не могут перекрываться. То же самое касается Y-диапазона значений.
Если значения X и значения Y двух прямоугольников пересекаются, то все точки с этими значениями X и Y содержатся в пересечении.
Временная сложность O(1), потому что количество операций постоянно.