Matcom Online Grader
Faculty of Mathematics and Computer Science of University of Havana
ℹ️ We've recently migrated MOG to a new server with a different grader. As a result, some features—especially those related to submission evaluation—might not work correctly. If you encounter any issues, please report them by clicking the exclamation icon in the bottom right corner of the website.
Dado un array x[1...n] y un número
m
, para todo i ∈ [1...
n
−
m
+1] es necesario encontrar el mínimo de x[
i
], x[
i
+ 1], ..., x[
i
+
m
−1] y devolver la suma de estos mínimos.
Input
La primera línea de la entrada contiene dos enteros:
n
y
m
(2 ≤
n
≤ 30000000,1 ≤
m
≤
n
) separados por espacio. La segunda línea contiene tres enteros:
a
,
b
y
c
(−2^31 ≤
a,b,c
≤ 2^31 −1). La tercera línea tiene los valores de x[1] y x[2] (−2^31 ≤
x
[1],
x
[2] ≤ 2^31 −1). El resto del array es calculado usando la siguiente fórmula:
x[i]
= f(a·x[i−2] + b·x[i−1] + c)
Donde
f
(
y
) retorna −2^31 ≤ z ≤ 2^31 −1 tal que
y
−
z
es divisible por 2^32.
Output
Imprima un entero — la suma de los mínimos de todos los subarrays de tamaño m del array dado.