Паркирање

Петар живее блиску до булевар на кој има N места за паркирање, наредени едноподруго во една права линија. Некои од овие места имаат препреки, па на нив не може да се паркира. На другите, често се паркираат жителите од таа населба.

Кога постои митинг на една политичка партија, Петар забележал дека полицијата го чисти паркингот од веќе паркирани возила, а потоа на булеварот се паркираат A автобуси, и секој од нив зафаќа по L последователни паркинг места. Па, така, на пример, паркинг местата на булеварот може да изгледаат вака откога полицијата ќе ги тргне сите паркирани возила (со 0 е означено паркинг место, а со X препрека):

     0 0 0 X X 0 0 0 0 X 0 0

Доколку должината на автобус е L=2 и треба да се паркираат A=4 автобуси, еден начин тоа да се направи е следниот:

     1 1 0 X X 2 2 3 3 X 4 4

Но, на пример, доколку имаше препрека на последното паркинг место, тогаш ќе може да се паркираат само 3 автобуси (не сите A=4), па партијата ќе треба да бара нов булевар за паркирање на своите автобуси.

Петар го знае бројот N, каде се наоѓаат иницијалните препреки, должината на автобусите L, како и тоа колку автобуси A ќе дојдат за да се паркираат. Тој смета дека не е во ред партиите да си носат ракоплескачи на митинг. Затоа, тој се прашува кој е минималниот број на дополнителни препреки кои треба да се постават пред да дојдат автобусите, за да не е можно да се паркираат сите A автобуси (во случајот опишан погоре, доволна е една нова препрека).

Дали можете да му помогнете на Петар да го реши овој проблем?



Влез

Во првиот ред се запишани два цели броја N и P (1 <= P < N <= 200000), кои го означуваат бројот на паркинг места и бројот на препреки. Во вториот ред се запишани P цели броеви (секој со вредност од 1 до N) кои ги означуваат препреките.

Во следниот ред се запишани два цели броја A и L (1 <= A, L <= N), кои го означуваат бројот на автобуси и нивната должина (секој автобус има иста должина L, т.е. тој зафаќа L паркинг места).

Забелешка: Во тест случаи кои носат најмалку 10% од поените, бројот N ќе биде помал или еднаков на 5.
Во други тест случаи кои носат најмалку 20% од поените, бројот N ќе биде помал или еднаков на 20.
За дополнителни 10% од поените, должината на автобус ќе биде еднаква на L=1.



Излез

Во првиот ред отпечатете го бараниот минимален број на дополнителни препреки M кои треба да се постават (овој број секогаш ќе биде поголем или еднаков на 1, т.е. иницијално на булеварот ќе има простор за најмалку A автобуси со должина L).

Во следниот ред отпечатете ги M-те паркинг места на кои треба да се постават препреките, во кој било редослед. Доколку постојат повеќе решенија со еднаков минимален број на препреки M, можете да отпечатите кое било од нив.



Ограничувања

Временско ограничување: 1 second
Мемориско ограничување: 64 megabytes



Примери


влез
12 3
4 5 10
4 2
излез
1
12


влез
6 2
1 4
1 2


излез
2
3 6


Објаснување за првиот пример: Ова е примерот од текстот на задачата. Имајте предвид дека постојат и други можни решенија каде M=1: на пример, да се постави препрека на паркинг местото 2, итн.

Објаснување за вториот пример: Иницијално имаме X 0 0 X 0 0. Бидејќи доаѓа само A=1 автобус со должина L=2, потребно е да се постават две препреки (на пример, на 3 и 6), за да не постои место каде истиот да се паркира.



 Submit your code