Пересечение интервалов в векторах

Rust Средний vectors

Задача «Пересечение интервалов в векторах»

Даны два вектора, содержащие непересекающиеся и отсортированные по возрастанию интервалы. Каждый интервал представлен парой целых чисел [start, end] (включительно). Необходимо найти пересечение этих двух наборов интервалов. Результат должен быть представлен в виде вектора интервалов, отсортированных по возрастанию. Если пересечений нет, вывести пустой вектор. Гарантируется, что входные интервалы не пересекаются внутри каждого вектора.

Формат ввода

В первой строке целое число n — количество интервалов в первом векторе. Затем n строк, каждая содержит два целых числа start и end через пробел. Далее целое число m — количество интервалов во втором векторе. Затем m строк с интервалами.

Формат вывода

В первой строке целое число k — количество интервалов в пересечении. Затем k строк, каждая с двумя числами — start и end через пробел.

Примеры

Пример 1

ВВОД
1 4 7 1 8 10
ВЫВОД
0

Пример 2

ВВОД
bbbbb
ВЫВОД
1

Пример 3

ВВОД
3 1 2 3
ВЫВОД
0
main.rs