QOJ.ac

QOJ

実行時間制限: 2 s メモリ制限: 1024 MB 満点: 100 ハック可能 ✓

#16890. Magia ciągów

統計

Hanbyeol zaplanował specjalne wydarzenie z okazji finałów UCPC, które po trzech latach przerwy odbywają się stacjonarnie. Wydarzeniem tym jest wspólne jedzenie ciasta z malinami! Hanbyeol podzielił ciasto w kształcie walca na $M$ równych części, tak aby każda z nich miała kształt wycinka walca, i umieścił na każdym kawałku po jednej malinie. Następnie ponumerował kawałki od $1$ do $M$ zgodnie z ruchem wskazówek zegara.

Gdy Hanbyeol dowiedział się, że w zawodach weźmie udział łącznie $N$ ($N \le M$) uczestników, z góry ustalił, który kawałek ciasta otrzyma każdy z nich. Jednak w momencie, gdy wszyscy uczestnicy dotarli na miejsce i Hanbyeol miał rozdać kawałki zgodnie z planem, jeden z uczestników wskazał na malinę na cieście i oświadczył: „Jeśli nie dasz mi tej maliny, rozwiążę wszystkie zadania w 10 minut!”. Wkrótce inni uczestnicy również zaczęli zgłaszać swoje życzenia, aż w końcu każdy z nich wskazał malinę, którą chciałby zjeść.

Aby spełnić wymagania uczestników, Hanbyeol musi zmienić położenie malin na cieście. Jednak maliny są wrażliwe na zmiany środowiskowe i zepsują się, jeśli nie będą przenoszone w następujący sposób:

  • Wybierz kawałek i przenieś wszystkie znajdujące się na nim maliny na bezpośrednio następny kawałek.

W tym układzie bezpośrednim następnikiem kawałka $1$ jest kawałek $2$, kawałka $2$ jest kawałek $3$, ..., kawałka $M-1$ jest kawałek $M$, a kawałka $M$ jest kawałek $1$.

Ponieważ zepsute maliny negatywnie wpływają na inne, Hanbyeol chce spełnić wymagania wszystkich uczestników, wykonując minimalną liczbę przeniesień, tak aby żadna malina się nie zepsuła. Pomóżmy Hanbyeolowi uniknąć katastrofy, w której zawody kończą się po 10 minutach.

Uczestnicy nie przejmują się tym, że zjedzą wybraną przez siebie malinę razem z innymi, a przeniesienie wielu malin z jednego kawałka w jednym ruchu liczy się jako jedno przeniesienie.

Wejście

W pierwszej linii podano liczbę kawałków ciasta $M$ oraz liczbę uczestników zawodów $N$, oddzielone spacją ($1 \le N \le M \le 300\,000$).

W drugiej linii podano $N$ liczb całkowitych $a_1, \dots, a_N$ oddzielonych spacjami ($1 \le a_i \le M$). $a_i$ oznacza numer kawałka ciasta przydzielonego $i$-temu uczestnikowi, przy czym wszystkie $a_i$ są parami różne.

W trzeciej linii podano $N$ liczb całkowitych $b_1, \dots, b_N$ oddzielonych spacjami ($1 \le b_i \le M$). $b_i$ oznacza numer kawałka ciasta, na którym znajduje się malina pożądana przez $i$-tego uczestnika.

Wyjście

Jeśli możliwe jest spełnienie wymagań wszystkich uczestników bez zepsucia malin, wypisz minimalną liczbę przeniesień. W przeciwnym razie wypisz $-1$.

Przykład

Wejście 1

5 2
3 5
1 4

Wyjście 1

3

Wejście 2

3 2
3 2
1 2

Wyjście 2

5

Wejście 3

4 3
1 3 4
1 1 3

Wyjście 3

-1

Uwagi

W pierwszym przykładzie wymagania wszystkich uczestników można spełnić, wykonując łącznie 3 przeniesienia w następujący sposób. Nie ma sposobu na wykonanie mniejszej liczby przeniesień.

i. Przenieś wszystkie maliny z kawałka $1$ na kawałek $2$. ii. Przenieś wszystkie maliny z kawałka $2$ na kawałek $3$. iii. Przenieś wszystkie maliny z kawałka $4$ na kawałek $5$.

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.