Codeforces Round 574 (Div. 2) |
---|
Закончено |
Сережа проводит спецкурс по построению карты высот базы отдыха Стёпаново. Он наложил на карту базы прямоугольную сетку размера $$$n \times m$$$ клеток, строки которой нумеруются от $$$1$$$ до $$$n$$$ с севера на юг, а столбцы — от $$$1$$$ до $$$m$$$ с запада на восток. После этого он измерил в каждой клетке среднюю высоту земли над уровнем Рыбинского моря и получил матрицу высот размера $$$n \times m$$$. Клетка $$$(i, j)$$$ находится на пересечении $$$i$$$-й строки и $$$j$$$-го столбца и имеет высоту $$$h_{i, j}$$$.
Теперь Сережа просматривает результат своих трудов в браузере. На экран Сережи помещается подпрямоугольник размера $$$a \times b$$$ матрицы высот ($$$1 \le a \le n$$$, $$$1 \le b \le m$$$). Он пытается определить, где на базе будут скапливаться лужи после дождя. Для этого он находит на отображаемой на экране части карты клетку с минимальной высотой.
Помогите Сереже посчитать сумму высот таких клеток для всех возможных частей карты, которые могут отображаться на экране. То есть, нужно посчитать сумму по всем $$$1 \le i \le n - a + 1$$$ и $$$1 \le j \le m - b + 1$$$ минимальных высот в подматрицах размера $$$a \times b$$$, верхние левые углы которых находятся в клетках $$$(i, j)$$$.
Рассмотрим последовательность $$$g_i = (g_{i - 1} \cdot x + y) \bmod z$$$. Числа $$$g_0$$$, $$$x$$$, $$$y$$$ и $$$z$$$ вам даны.
По чудесному стечению обстоятельств, $$$h_{i, j} = g_{(i - 1) \cdot m + j - 1}$$$ ($$$(i - 1) \cdot m + j - 1$$$ — это индекс).
В первой строке даны четыре целых числа $$$n$$$, $$$m$$$, $$$a$$$ и $$$b$$$ — размеры матрицы и подматрицы, которая помещается на экране ($$$1 \le n, m \le 3\,000$$$, $$$1 \le a \le n$$$, $$$1 \le b \le m$$$).
Во второй строке даны четыре целых числа $$$g_0$$$, $$$x$$$, $$$y$$$ и $$$z$$$ ($$$0 \le g_0, x, y < z \le 10^9$$$).
Выведите одно целое число — ответ на задачу.
3 4 2 1 1 2 3 59
111
В примере матрица высот выглядит так:
Название |
---|