MEX операциясы


Шешімді жөнелту

Ұпайлар: 1
Уақыт шектеуі: 1.0s
Жад шектеуі: 256M

Author:
Problem types
Рұқсат етілген тілдер
Assembly, Awk, Brain****, C, C++, Go, Java, Pascal, Perl, PHP, Python, Sed, Text

Екі массив берілген: \(a_1,a_2,\dots,a_n\) және \(b_1,b_2,\dots,b_m\).

Ағымдағы \(a\) массивіне келесі операцияны кез келген (соның ішінде нөл) мөлшерде орындауға болады:

\(a\) массивінен кез келген бос емес іштізбек1 \(c\) таңдалады. Содан кейін \(a\) массивінен таңдалған элементтердің ішінен келесі шартты қанағаттандыратындары ғана өшіріледі:

\[a_{i_j} < \mathrm{MEX}(c)\]

Яғни, таңдалған іштізбектен \(\mathrm{MEX}(c)\)2 мәнінен кіші барлық элементтер өшіріледі, ал қалған элементтер сол күйінде қалады.

Тапсырма — осындай операциялардың белгілі бір (мүмкін, нөл) санынан кейін бастапқы \(a\) массивінен \(b\) массивін алу мүмкін бе, соны анықтау. Шартты жақсырақ түсіну үшін мысалдармен танысыңыз.

Енгізу

Бірінші жолда екі бүтін сан \(n\) және \(m\) (\(1 \le m \le n \le 2\cdot10^5\)) беріледі — сәйкесінше \(a\) және \(b\) массивтеріндегі элементтердің саны.

Екінші жолда \(n\) бүтін сан \(a_1,a_2,\dots,a_n\) (\(0 \le a_i \le 2\cdot10^5\)) беріледі — \(a\) массивінің элементтері.

Үшінші жолда \(m\) бүтін сан \(b_1,b_2,\dots,b_m\) (\(0 \le b_i \le 2\cdot10^5\)) беріледі — \(b\) массивінің элементтері.

Шығару

Егер \(a\) массивінен \(b\) массивін алуға мүмкіндік болса — «YES» шығарыңыз, әйтпесе «NO» шығарыңыз.

Әріптердің кез келген регистрін пайдалануға болады (мысалы, «yEs», «no» және «Yes» жолдары дұрыс деп есептеледі).

Мысалдар

Енгізу 1
7 2
0 3 1 0 0 1 2
3 0
Жауап 1
YES
Енгізу 2
3 2
1 0 5
3 5
Жауап 2
NO

Ескертпелер

Бірінші мысалда орын алатын мүмкін операциялар тізбектерінің бірі:

  1. Бастапқы массивте \[a=[0,3,1,0,0,1,2]\] позициялардың \(1 \le i_1 < i_2 < i_3 \le n\) болатын іштізбегін \([1,2,6]\) таңдайық: \[c=[0,3,1],\qquad \mathrm{MEX}(c)=2\] Таңдалған іштізбекте болған және \(\mathrm{MEX}(c)\)-тен кіші элементтер позицияларда \([1,6]\) орналасқан. Оларды өшіргеннен кейін, массив осындай болады: \[a=[3,1,0,0,2]\]

  2. Ағымдағы массивте \[a=[3,1,0,0,2]\] позициялардың \([2,4,5]\) болатын іштізбегін таңдайық: \[c=[1,0,2],\qquad \mathrm{MEX}(c)=3.\] Оларды өшіргеннен кейін, массив осындай болады: \[a=[3,0].\]


  1. Іштізбек — бұл бастапқы массивтен кейбір (мүмкін, бір де бір) элементтерді өшіріп, қалған элементтердің ретін өзгертпей алынатын тізбек.

  2. \(\mathrm{MEX}(c)\) — бұл \(c\) тізбегінде кездеспейтін ең кіші теріс емес бүтін сан. Мысалы, \(c = [0, 2, 3]\) болса, онда \(\mathrm{MEX}(c) = 1\).