eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Поклейка обоев

Поклейка обоев

Однажды майор Пронин затеял в квартире ремонт. В одной из стен на кухне по плану потребовалось последовательно проделать (\textbf{N}--\textbf{1}) прямоугольных вентиляционных отверстий с горизонтальными и вертикальными сторонами (\textbf{1} ≤ \textbf{N} ≤ \textbf{100}). Если оказывалось, что очередное отверстие пересекается с уже проделанными, то майор вырезал только нетронутую часть соответствующего прямоугольника. Следующая стадия после ремонта -- это поклейка обоев. В магазине напротив майор может заказать не более (\textbf{2N}--\textbf{1})\textbf{^2} прямоугольных кусков обоев любых размеров c ненулевой площадью. Он хочет обклеить стену кусками обоев так, чтобы: \begin{enumerate} \item Вентиляционные отверстия не были заклеены даже частично. \item Никакие два куска не пересекались (касаться сторонами они при этом могут). \item На стене не осталось бы непокрытой области. \end{enumerate} \InputFile Рассмотрим декартову систему координат, оси которой параллельны сторонам отверстий и стены. Сначала вводится число \textbf{N} (\textbf{1} ≤ \textbf{N} ≤ \textbf{100}), далее -- описание \textbf{N} прямоугольников. Первый прямоугольник описывает положение стены в нашей системе координат, остальные (\textbf{N}--\textbf{1}) ― положения отверстий в порядке их появления. Стороны всех прямоугольников параллельны осям координат. Каждый прямоугольник задаётся координатами своих левого нижнего и правого верхнего углов: \textbf{x_1}, \textbf{y_1}, \textbf{x_2}, \textbf{y_2}. Координаты --- целые числа, не превосходящие по модулю \textbf{31000}, \textbf{x_1} < \textbf{x_2}, \textbf{y_1} < \textbf{y_2}. Прямоугольники, обозначающие положение отверстий, \textbf{могут} пересекаться и касаться, поскольку это могло быть необходимо в ходе ремонта. Разумеется, все вентиляционные отверстия находятся в стене, то есть не выходят за границы первого прямоугольника. \OutputFile Вначале выведите количество кусков обоев \textbf{K}, которое нужно заказать в магазине (\textbf{K} должно быть не больше (\textbf{2N}--\textbf{1})\textbf{^2}). Далее выведите схему поклейки: \textbf{K} прямоугольников, обозначающих места расположения заказанных кусков. Для каждого прямоугольника нужно вывести координаты его левого нижнего и правого верхнего углов. \textbf{Все координаты должны быть целыми числами}. Гарантируется, что решение существует. Если возможных способов несколько, выведите любой.
Лимит времени 1 секунда
Лимит использования памяти 64 MiB
Входные данные #1
2
-1 -1 2 2
0 0 1 1
Выходные данные #1
5
-1 -1 2 0
-1 0 0 2
0 1 1 2
1 0 2 1
1 1 2 2