Miglior abbinamento (Best matcher)

Hai deciso di implementare la versione più semplice di un’app di incontri. A tal fine, hai pensato di raccogliere le altezze delle persone nel Gruppo A come e le altezze delle persone nel Gruppo B come Il tuo obiettivo è creare il maggior numero possibile di coppie (una persona può essere associata solo una volta). Pensi inoltre che le coppie siano accettabili se:
  • La persona del Gruppo B non è più bassa della persona del Gruppo A di x
  • La persona del Gruppo B non è più alta della persona del Gruppo A di oltre y
Desideri formare il maggior numero di coppie possibile.

Input

La prima riga di input contiene 4 interi n, m (1 ≤ n, m ≤ ), x e y (0 ≤ x, y ≤ ): il numero di individui nel Gruppo A, il numero di individui nel Gruppo B e i valori limite per le altezze accettabili.

Output

Il programma deve mostrare il numero massimo di coppie che è stato possibile formare.

Esempi

Input
Output
6 2 0 0 1 2 3 4 5 6 6 7
1
3 3 1 1 4 5 6 3 4 7
3
 

Constraints

Time limit: 1 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue