QOJ.ac

QOJ

Time Limit: 1 s Memory Limit: 512 MB Total points: 100

#988. Przywracanie świateł do pudełka

Statistics

Wesley musi zdjąć swoje świąteczne lampki. Ma rząd $N$ lampek, z których niektóre mogą być włączone, a Wesley musi wyłączyć wszystkie lampki, zanim będzie mógł je odłączyć (w przeciwnym razie grozi mu śmiertelne porażenie prądem).

Każda lampka ma odpowiadający jej przełącznik, którego można użyć do włączenia lub wyłączenia lampki. Wesley może użyć co najwyżej jednego z tych przełączników w każdej sekundzie, zaczynając od pierwszej sekundy. Lampki są jednak kapryśne i w ciągu kolejnych $M$ sekund będą samoczynnie zmieniać swój stan! Dokładniej, pod koniec $i$-tej sekundy, $b_i$-ta lampka zmieni swój stan: włączy się, jeśli była wyłączona, lub wyłączy się, jeśli była włączona. Wesley chce zdjąć lampki tak szybko, jak to możliwe, więc chciałby poznać najwcześniejszy możliwy czas, w którym wszystkie lampki będą wyłączone, zakładając, że używa przełączników w sposób optymalny. W szczególności należy wypisać najmniejsze $t$ takie, że wszystkie lampki mogą zostać wyłączone przed końcem $t$-tej sekundy przy użyciu pewnej sekwencji przełączeń. Zauważ, że jeśli wszystkie lampki są początkowo wyłączone, to najmniejsze takie $t$ wynosi 0.

Wejście

Pierwsza linia zawiera dwie liczby całkowite $N$ oraz $M$, liczbę lampek oraz liczbę samoczynnych zmian, które wystąpią ($1 \le N, M \le 2 \cdot 10^5$).

Druga linia zawiera $N$ liczb całkowitym $a_1, a_2, \dots, a_N$ ($0 \le a_i \le 1$), określających początkowy stan lampek. Tutaj $a_i = 1$ oznacza, że $i$-ta lampka jest początkowo włączona, a $a_i = 0$ oznacza, że jest wyłączona.

Trzecia i ostatnia linia zawiera $M$ liczb całkowitych $b_1, b_2, \dots, b_M$, które oznaczają, że $b_i$-ta lampka zmienia swój stan pod koniec $i$-tej sekundy ($1 \le b_i \le N$).

Wyjście

Wypisz pojedynczą liczbę całkowitą, najwcześniejszy czas (w sekundach), po którym Wesley wyłączy wszystkie lampki. Zauważ, że jeśli wszystkie lampki można wyłączyć przed upływem $M$ sekund, Wesley zignoruje wszelkie przyszłe przełączenia i zdejmie je natychmiast.

Przykład

Wejście 1

3 3
1 1 1
1 2 3

Wyjście 1

2

Wejście 2

5 8
0 1 0 1 1
1 2 2 1 4 3 2 1

Wyjście 2

4

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.