QOJ.ac

QOJ

Time Limit: 1.0 s Memory Limit: 256 MB Total points: 100 Hackable ✓

#20287. Cultivo de bacterias

Statistics

Se te dan dos secuencias de enteros $a_1, a_2, \ldots, a_n$ y $b_1, b_2, \ldots, b_n$, y un entero $M$.

En una operación, elige dos enteros $l$ y $r$ ($1 \le l \le r \le n$). Para cada $i$ ($l \le i \le r$), sustituye $a_i$ por $\min(2 \cdot a_i, M)$.

Encuentra el número mínimo de operaciones necesarias para transformar $a$ en $b$. Si es imposible, imprime $-1$.

Entrada

Cada archivo de entrada contiene varios casos de prueba. La primera línea contiene el número de casos de prueba $T$ ($1 \le T \le 10^4$). A continuación se describen los casos de prueba.

La primera línea de cada caso contiene dos enteros $n$ y $M$ ($1 \le n \le 2 \cdot 10^5$, $1 \le M \le 10^9$).

La segunda línea contiene $n$ enteros $a_1, a_2, \ldots, a_n$ ($0 \le a_i \le M$), la secuencia inicial.

La tercera línea contiene $n$ enteros $b_1, b_2, \ldots, b_n$ ($0 \le b_i \le M$), la secuencia objetivo.

Se garantiza que la suma de $n$ sobre todos los casos de prueba no supera $2 \cdot 10^5$.

Salida

Para cada caso de prueba, imprime el número mínimo de operaciones necesarias para transformar $a$ en $b$. Si es imposible, imprime un único entero $-1$.

Ejemplos

Entrada 1

2
5 10
1 3 0 6 2
4 10 0 10 8
3 12
3 4 0
12 10 0

Salida 1

2
-1

Nota

En el primer caso de prueba, aplica la operación dos veces al intervalo $[1, 5]$. Tras la primera operación, la secuencia pasa a ser $[2, 6, 0, 10, 4]$, y tras la segunda, pasa a ser $[4, 10, 0, 10, 8]$, por lo que la respuesta es $2$.

En el segundo caso de prueba, después de cualquier número de operaciones, el segundo elemento solo puede ser $4$, $8$ o $12$, por lo que nunca puede convertirse en $10$.

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.