E. Рекурсивный мем
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Прямоугольное поле высоты $$$2^N$$$ и ширины $$$2^N-1$$$ разбито на квадратные единичные клеточки. Сначала выделяется прямоугольная область высоты $$$2^N$$$ и ширины $$$2^{N-1}$$$, прилегающая к левому краю поля. Затем для каждой прямоугольной области справа приклеиваются две области вдвое меньшего размера. Процесс продолжается до тех пор, пока размеры областей не станут $$$2 \times 1$$$, и всё поле не будет заполнено.

Далее, клеточки поля красятся в чёрный и жёлтый цвет по следующему принципу. Самая большая область красится в чёрный цвет. Затем для каждой области нижняя из прилегающих слева областей красится в тот же цвет, что и текущая область, а верхняя — в противоположный.

Результат раскраски для $$$N=4$$$ иллюстрирует следующая картинка:

У Вас есть $$$q$$$ запросов, каждый из которых задаёт произвольный прямоугольник внутри поля. Посчитайте для каждого запроса количество чёрных клеток, которые покрывает соответствующий прямоугольник.

Входные данные

В первой строке дано два целых числа $$$N$$$ и $$$q$$$ ($$$1 \le N \le 30$$$, $$$1 \le q \le 10^4$$$).

Далее идут $$$q$$$ строк, в $$$i$$$-й из них дано описание $$$i$$$-го запроса: четыре целых числа $$$r_i$$$, $$$c_i$$$, $$$h_i$$$, $$$w_i$$$, где $$$r_i$$$, и $$$c_i$$$ — номер строки и номер столбца клеточки, в которой находится левый верхний угол прямоугольника, а $$$h_i$$$ и $$$w_i$$$ — высота и ширина прямоугольника соответственно ($$$1 \le r_i, h_i, r_i+h_i-1 \le 2^N$$$, $$$1 \le c_i, w_i, c_i+w_i-1 \le 2^N-1$$$, $$$1 \le i \le q$$$).

Выходные данные

Выведите $$$q$$$ строк, в $$$i$$$-й из них должно быть одно целое число — ответ на $$$i$$$-й запрос.

Отметим, что ответы могут получиться очень большими и не поместиться в 32-битную переменную. Пожалуйста используйте 64-битный тип данных.

Система оценки

Тесты к этой задаче состоят из нескольких групп. Баллы за каждую группу ставятся только при прохождении всех тестов группы и всех тестов всех необходимых групп.

ГруппаБаллыДополнительные ограниченияНеобходимые группыКомментарий
00Тесты из условия
130$$$N \le 5, q \le 1000$$$0
220$$$N \le 10, q \le 10^4$$$0, 1
320$$$N \le 15, q \le 100$$$0, 1
420$$$N \le 20, q \le 10^4$$$0-3
510$$$N \le 30, q \le 10^4$$$0-4Полные ограничения
Пример
Входные данные
3 4
1 1 8 7
2 4 6 4
4 1 2 6
6 3 1 3
Выходные данные
44
14
10
3
Примечание

Прямоугольники из примера, для которых нужно посчитать количество чёрных клеточек, показаны на следующем рисунке: