Codeforces Round 817 (Div. 4) |
---|
Закончено |
У вас есть $$$n$$$ прямоугольников, $$$i$$$-й из них имеет высоту $$$h_i$$$ и ширину $$$w_i$$$.
Вам надо ответить на $$$q$$$ запросов, которые задаются четырьмя числами: $$$h_s \ w_s \ h_b \ w_b$$$.
Для каждого запроса выведите суммарную площадь всех таких прямоугольников, которые могут вместить в себя прямоугольник с высотой $$$h_s$$$ и шириной $$$w_s$$$ и при этом сами вмещаются в прямоугольник с высотой $$$h_b$$$ и шириной $$$w_b$$$. Иными словами, выведите $$$\sum h_i \cdot w_i$$$ по всем $$$i$$$, что $$$h_s < h_i < h_b$$$ и $$$w_s < w_i < w_b$$$.
Обратите внимание, что если у прямоугольников одинаковая ширина или высота, то ни один из них не может вместить в себя другой. Также обратите внимание, что вы не можете вращать прямоугольники.
Обратите внимание, что для некоторых наборов входных данных ответ не будет помещаться в 32-х битных целочисленный тип, вы должны использовать 64-битный целочисленный тип вашего языка (например, long long в C++).
В первой строке входных данных записано целое число $$$t$$$ ($$$1 \leq t \leq 100$$$) — количество наборов входных данных.
Первая строка каждого набора входных данных содержит два целых числа $$$n, q$$$ ($$$1 \leq n \leq 10^5$$$; $$$1 \leq q \leq 10^5$$$) — количество прямоугольников и количество запросов.
Затем следуют $$$n$$$ строк, каждая содержит два целых числа $$$h_i, w_i$$$ ($$$1 \leq h_i, w_i \leq 1000$$$) — высоту и ширину $$$i$$$-го прямоугольника.
Затем в $$$q$$$ строках заданы запросы, каждая строка содержит четыре целых числа $$$h_s, w_s, h_b, w_b$$$ ($$$1 \leq h_s < h_b,\ w_s < w_b \leq 1000$$$) — описание запроса.
Сумма значений $$$q$$$ по всем набора входных данных не превосходит $$$10^5$$$. Сумма значений $$$n$$$ по всем наборам входных данных не превосходит $$$10^5$$$.
Для каждого набора входных данных выведите $$$q$$$ строк, $$$i$$$-я должна содержать ответ на $$$i$$$-й запрос.
32 12 33 21 1 3 45 51 12 23 34 45 53 3 6 62 1 4 51 1 2 101 1 100 1001 1 3 33 1999 999999 999999 9981 1 1000 1000
6 41 9 0 54 4 2993004
В первом наборе входных данных только один запрос. Нам надо найти сумму площадей всех прямоугольников, которые вмещают прямоугольник $$$1 \times 1$$$ и сами вмещаются в прямоугольник $$$3 \times 4$$$.
Нам подходит только прямоугольник $$$2 \times 3$$$, так как $$$1 < 2$$$ (сравниваем высоты) и $$$1 < 3$$$ (сравниваем ширины), то $$$1 \times 1$$$ помещается в него. Аналогично, $$$2 < 3$$$ (сравниваем высоты) и $$$3 < 4$$$ (сравниваем ширины), то есть он помещается в $$$3 \times 4$$$.
Прямоугольник $$$3 \times 2$$$ слишком высок, чтобы поместиться в $$$3 \times 4$$$ rectangle.
Суммарная площадь в ответа равна $$$2 \cdot 3 = 6$$$.
Название |
---|