Dietro il recinto (Platino)#10590

Dietro il recinto (Platino)

1 secondo
128 megabyte
Molto difficile

Il fattore John ha notato che molte delle sue mucche, per qualche motivo, soffrono di agorafobia (cioè hanno paura degli spazi aperti). Per far sì che le mucche abbiano meno paura di pascolare, egli divide il suo grande campo in diverse piccole sezioni, installando recinzioni verticali (nord-sud) e orizzontali (est-ovest).

Il grande campo è un rettangolo con i vertici nei punti e . Il fattore John installa recinzioni verticali in posizioni diverse a_1, \ldots, a_n~(0 < a_i < a); ogni recinzione va dal punto (a_i, 0) al punto (a_i, b). Installa inoltre recinzioni orizzontali nelle posizioni b_1, \ldots, b_m~(0 < b_i < b); ogni recinzione di questo tipo va dal punto (0, b_i) al punto (a, b_i). Ogni recinzione verticale interseca ogni recinzione orizzontale, dividendo il grande campo in un totale di (n + 1) \times (m + 1) sezioni.

Sfortunatamente, il fattore John si è completamente dimenticato di fare dei cancelli nelle sue recinzioni, per cui le mucche non possono lasciare le proprie sezioni recintate e spostarsi per tutto il campo! Vuole correggere questa situazione rimuovendo parti di alcune recinzioni per permettere alle mucche di spostarsi tra sezioni adiacenti. Vuole scegliere determinate coppie di sezioni adiacenti e rimuovere completamente la parte di recinzione che le separa. Dopodiché vuole che le mucche possano passare attraverso le aperture create e spostarsi liberamente in qualsiasi punto del grande campo.

Ad esempio, il fattore John potrebbe iniziare con la seguente disposizione delle recinzioni:

+---+--+
|   |  |
+---+--+
|   |  |  
|   |  |
+---+--+

e aprire dei passaggi nel modo seguente:

+---+--+
|      |  
+---+  +  
|      |  
|      |
+---+--+

Aiutate il fattore John a determinare la lunghezza totale minima di recinzione che deve essere rimossa per raggiungere il suo obiettivo.

Input

Nella prima riga sono contenuti quattro numeri interi a, b~(1 \le a, b \le 10^9), n~(0 \le n \le 25000) e m~(0 \le m \le 25000). Nelle successive righe sono contenuti i valori a_1, \ldots, a_n, e nelle successive righe — i valori b_1, \ldots, b_m.

Output

Stampate la lunghezza totale minima di recinzione che il fattore John deve rimuovere. Notate che questo valore potrebbe essere troppo grande per stare in un tipo intero a bit standard, quindi potrebbe essere necessario utilizzare un tipo intero a bit.

Esempi

Esempio 1

Loading
Loading