printРабочее место участника

printЗадачи

957. Стена

Ограничения: время – 1s/2s, память – 16MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

На ежегодную выставку достижений в области информатике приехало множество фирм – производителей программной продукции. Организаторы выставки отвели каждой фирме место в выставочном зале согласно её потребностям. Однако не была учтена одна очень важная деталь. Одни фирмы разрабатывают программы для операционной системы "Doors", другие же – для операционной системы "Panix". Причём отношения между представителями фирм, пользующихся разными операционными системами, оказались настолько плохими, что, находясь в пределах прямой видимости, они тут же начинали ссориться и даже драться. Необходимо было срочно принимать какие-то меры. Организаторы выставки решили разделить выставочный зал сплошной стеной так, чтобы все пользователи "Doors" оказались по одну сторону, а все пользователи "Panix" – по другую. При этом стена не должна иметь никаких изгибов (то есть основание стены есть отрезок прямой линии), и, конечно, экспозиции фирм не могут перемещаться. Экспозиция любой фирмы занимает прямоугольный участок выставочного зала. Стороны прямоугольников параллельны координатным осям. Прямоугольники не пересекаются и не касаются друг друга.
Напишите программу, которая определяет, можно ли соорудить такую стену.
Ввод
В первой строке входного файла записано два целых числа `D` и `P` – количество фирм, работающих в системе "Doors" и количество фирм, работающих в системе "Panix" (`1\ ≤\ D,\ P\ ≤\ 500`). Следующие `D` строк содержат описание экспозиций пользователей "Doors". В оставшихся `P` строках содержится описание экспозиций пользователей "Panix". Каждая экспозиция задаётся четырьмя целыми числами `x_1,\ y_1,\ x_2,\ y_2`. `(x_1,\ y_1)` – координаты юго-западного угла прямоугольника, а `(x_2,\ y_2)` – координаты северо-восточного угла (`0\ <\ x_1\ <\ x_2\ <\ 15000`, `0\ <\ y_1\ <\ y_2\ <\ 15000`).
Вывод
Запишите в выходной файл слово "Yes", если стену можно соорудить, и слово "No" в противном случае.

Пример ввода 1

3 3
10 40 20 50
50 80 60 90
30 60 40 70
30 30 40 40
50 50 60 60
10 10 20 20

Пример вывода 1

Yes

Пример ввода 2

2 1
10 10 20 20
40 10 50 20
25 12 35 40

Пример вывода 2

No
Источник: Весенний турнир имени Мартовского Зайца, 2007
loading