QOJ.ac

QOJ

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

#14093. Ordenación por reemplazos

Statistics

Considera un arreglo $A$ y un conjunto $B$ de enteros tales que todos los números de $A$ y $B$ son distintos. Tu tarea es convertir $A$ en un arreglo ordenado. Para ello puedes tomar cualquier número de $B$ y reemplazar con él cualquier elemento de $A$. Puedes realizar esta operación tantas veces como quieras, pero cada elemento de $B$ puede usarse como máximo una vez.

Determina el mínimo número de operaciones necesarias para convertir $A$ en un arreglo ordenado, o determina que es imposible.

Entrada

La primera línea de la entrada contiene dos enteros $N$ y $M$ ($1 \le N,M \le 5\cdot10^5$), los tamaños de $A$ y $B$, respectivamente.

La segunda línea contiene $N$ enteros $A_1,A_2,\ldots,A_N$.

La tercera línea contiene $M$ enteros $B_1,B_2,\ldots,B_M$.

Los $N+M$ elementos son todos distintos, positivos y no superan $10^9$.

Salida

Si es imposible convertir $A$ en un arreglo ordenado, imprime $-1$. En caso contrario, imprime el mínimo número de operaciones necesarias.

Ejemplos

Entrada 1

4 1
2 6 13 10
5

Salida 1

-1

Entrada 2

4 2
2 6 13 10
5 4

Salida 2

2

Entrada 3

4 3
2 6 13 10
5 4 19

Salida 3

1

Nota

En los tres ejemplos, el problema es que $13>10$, por lo que debemos cambiar al menos uno de ellos.

En el primero podemos reducir $13$ reemplazándolo por $5$, pero esto estropea el orden del otro lado, así que no hay solución.

En el segundo también tenemos $4$, que podemos usar para reparar el lado estropeado. Es imposible hacerlo con menos de $2$ operaciones.

En el tercer ejemplo por fin podemos aumentar el último elemento, ordenando así $A$ en $1$ operación.

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.