QOJ.ac

QOJ

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

#14093. Sortowanie przez zamiany

Statistics

Dane są tablica $A$ i zbiór $B$ liczb całkowitych, przy czym wszystkie liczby w $A$ i $B$ są parami różne. Twoim zadaniem jest przekształcić $A$ w tablicę posortowaną. W tym celu możesz wziąć dowolną liczbę z $B$ i zastąpić nią dowolny element $A$. Możesz wykonać tę operację dowolnie wiele razy, ale każdego elementu $B$ wolno użyć co najwyżej raz.

Wyznacz minimalną liczbę operacji potrzebnych do posortowania $A$ albo stwierdź, że jest to niemożliwe.

Wejście

Pierwszy wiersz wejścia zawiera dwie liczby całkowite $N$ i $M$ ($1 \le N,M \le 5\cdot10^5$), oznaczające odpowiednio rozmiary $A$ i $B$.

Drugi wiersz zawiera $N$ liczb całkowitych $A_1,A_2,\ldots,A_N$.

Trzeci wiersz zawiera $M$ liczb całkowitych $B_1,B_2,\ldots,B_M$.

Wszystkie $N+M$ elementów są parami różne, dodatnie i nie przekraczają $10^9$.

Wyjście

Jeżeli nie da się posortować $A$, wypisz $-1$. W przeciwnym razie wypisz minimalną potrzebną liczbę operacji.

Przykład

Wejście 1

4 1
2 6 13 10
5

Wyjście 1

-1

Wejście 2

4 2
2 6 13 10
5 4

Wyjście 2

2

Wejście 3

4 3
2 6 13 10
5 4 19

Wyjście 3

1

Uwagi

We wszystkich trzech przykładach problemem jest $13>10$, więc musimy zmienić co najmniej jedną z tych liczb.

W pierwszym przykładzie możemy zmniejszyć $13$, zastępując je przez $5$, ale psuje to porządek po drugiej stronie, więc rozwiązanie nie istnieje.

W drugim przykładzie mamy również $4$, którym możemy naprawić zepsutą stronę. Nie da się tego zrobić w mniej niż $2$ operacjach.

W trzecim przykładzie możemy wreszcie zwiększyć ostatni element, porządkując $A$ w $1$ operacji.

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.