Comiendo setas

Alicia y Benito tienen n setas en común, y se las quieren comer todas en
orden: primero la seta 1, luego la 2, … Cada seta será comida
enteramente por Alicia o por Benito. Se sabe que comer la seta i-ésima
provocaría satisfacción A_(i) a Alicia, y satisfacción B_(i) a Benito.
Son buenos amigos, por lo que han decidido maximizar la suma de las
satisfacciones de ambos, sin importar cuántas setas comerá cada uno.

Sin embargo, existe un problema. Como las setas tienen un gusto fuerte,
si cualquiera de ellos se come la seta j cuando la última seta que se
había comido era la i, se deberá restar un cierto valor T[i][j] a la
satisfacción total obtenida.

¿Podéis calcular la máxima satisfacción total posible, si se decide
quién se come cada seta de forma óptima?

Entrada

La entrada consiste en diversos casos, y sólo contiene números enteros
no negativos. Cada caso empieza con cinco números n, c, d, e y p. Siguen
A₁, ..., A_(n) y B₁, ..., B_(n). Asumid n ≥ 1, que c, d y e son menores
que p, p ≤ 1000, y que todas las A_(i) y las B_(i) están entre 0 y 1000.

Los valores c, d, e y p se dan para definir la matriz T[1..n][1..n] de
forma implícita, de la forma siguiente:
$$\begin{equation*}
T[i][j] = \left\{
  \begin{tabular}{lr}
    $c$, & si $i = 1$ y $j = 1$; \\
    $(d \cdot T[i][j-1] + e) \bmod p$, & si $j > 1$; \\
    $(d \cdot T[i-1][n] + e) \bmod p$, & \quad si $i > 1$ y $j = 1$.
  \end{tabular}\right.
\end{equation*}$$
Esta definición de la matriz T no tiene ningún truco, simplemente sirve
para que la entrada sea relativamente pequeña y rápida de leer.

Salida

Para cada caso, escribid la máxima satisfacción posible.

Puntuación

- test-1:   Casos con n ≤ 1000 y donde T sólo tiene ceros, como el
  Ejemplo 1.

- test-2:   Casos con n ≤ 10, como el Ejemplo 2.

- test-3:   Casos con n ≤ 100.

- test-4:   Casos con n ≤ 1000.

Información del problema

Autoría: Alex Alvarez

Generación: 2026-01-25T10:10:13.228Z

© Jutge.org, 2006–2026.
https://jutge.org
