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

printЗадачи

1308. Тестирование

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

Для крупной строительной фирмы была написана программа "TILE", которая выдавала варианты замощения пола прямоугольных комнат декоративной плиткой разного размера.
Напишите программу, которая проверяет результаты работы разработанной программы "TILE", выясняя для каждого выданного ей варианта наличие ошибок замощения пола:
  • плитки накладываются друг на друга;
  • плитки лежат вне комнаты;
  • плитки не полностью покрывают пол комнаты.
Входной файл с результатами работы тестируемой программы содержит несколько комнат. Первая строка задает число комнат. Каждая комната описывается несколькими строчками входного файла. Первая строка содержит два положительных целых числа: длину и ширину комнаты в миллиметрах. Максимальные размеры комнаты `40\ 000` на `40\ 000` мм. Следующая строка содержит единственное число `t` – количество плиток, используемых для замощения (`1\ ≤\ t\ ≤\ 100`). Следующие `t` строк описывают каждую плитку. Размещение плитки задается 4 целыми числами: `x_1\ y_1\ x_2\ y_2`, где `(x_1,y_1)` координаты нижнего левого угла плитки, `(x_2,y_2)` координаты верхнего правого угла плитки (`-100\ 000\ ≤\ x_1\ <\ x_2\ ≤100\ 000,\ -100\ 000\ ≤\ y_1\ <\ y_2\ ≤\ 100\ 000`).
Выходной файл для каждой комнаты должен содержать единственную строку, содержащую одно из следующих слов:
NONDISJOINTесли встречаются перекрывающиеся плитки;
NONCONTAINEDесли нет перекрывающихся плиток, но некоторые плитки выходят за пределы комнаты;
NONCOVERINGесли нет перекрывающихся плиток и нет плиток, выходящих за пределы комнаты, но некоторая часть комнаты не покрыта;
OKесли ошибок в замощении нет.

Пример ввода

4
4 3
2
0 0 2 2
1 1 5 5
4 3
2
0 0 2 2
-2 2 5 5
4 3
2
0 0 2 2
2 0 4 2
4 3
3
0 0 2 2
2 0 4 2
0 2 4 3

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

NONDISJOINT
NONCONTAINED
NONCOVERING
OK
Источник: ACM ICPC NWERC 2002
loading