Hay $n$ monstruos, y el $i$-ésimo monstruo tiene inicialmente $h_i$ puntos de salud.
Llamamos a un monstruo vivo si sus HP son estrictamente mayores que cero.
Tú tienes un poder de ataque de $a$, y tu oponente tiene un poder de ataque de $b$.
Mientras al menos un monstruo siga vivo, tú y tu oponente se turnan para luchar contra los monstruos (comenzando por ti).
Eres muy inteligente, así que en tu turno puedes atacar a cualquier monstruo que esté vivo o no hacer nada. Si eliges atacar a algún monstruo $i$, la salud del monstruo, $h_i$, disminuirá exactamente en $a$.
Después de tu ataque, si el monstruo muere (ya no está vivo), obtienes un punto de victoria.
Tu oponente, por otro lado, no es tan inteligente. Durante su turno, encuentra al monstruo con el índice más pequeño que esté vivo y lo ataca (es decir, encuentra el $i$ más pequeño tal que $h_i > 0$ y disminuye $h_i$ exactamente en $b$).
¿Cuál es el mayor número de puntos de victoria que puedes obtener?
Entrada
La primera línea contiene tres enteros $n, a, b$ ($1 \le n \le 300\,000$, $1 \le a, b \le 10^9$): el número de monstruos y los poderes de ataque tuyo y de tu oponente, respectivamente.
La segunda línea contiene $n$ enteros $h_1, h_2, \dots, h_n$ ($1 \le h_i \le 10^9$): los puntos de salud de los monstruos.
Salida
Imprime un solo entero: el mayor número de puntos de victoria que puedes obtener.
Ejemplos
Entrada 1
3 1 1 1 1 1
Salida 1
2
Entrada 2
3 1 1 2 2 2
Salida 2
3
Entrada 3
10 34 100 17 27 73 17 60 12 25 53 31 46
Salida 3
5
Nota
En el primer ejemplo, en tu primer turno, puedes matar al tercer monstruo, y en tu segundo turno, puedes matar al segundo monstruo.
En el segundo ejemplo, puedes esperar hasta que el monstruo más a la izquierda tenga $h_i = 1$, y luego matarlo tú mismo.