Cipele


Submit solution

Points: 90 (partial)
Time limit: 1.5s
Memory limit: 250M

Problem type
Allowed languages
Assembly, Awk, C, C++, Java, Perl, Python

Nakon što je potrošio većinu novca na informatičke projekte, Nadan je poželio svojim informatičarima priuštiti i kvalitetnu obuću za odlazak u svijet. Srećom po Nadana, u podrumu je imao \(N\) tenisica za lijevu nogu i \(M\) tenisica za desnu nogu. Kako je njihovo porijeklo nepoznato, sve su tenisice raznih, unaprijed poznatih veličina.

Nadan vas je zamolio da uparite što više tenisica možete, tj. složite maksimalan broj mogućih parova koji se sastoje od jedne lijeve i jedne desne cipele (nakon uparivanja mora vrijediti da od preostalih cipela nije moguće napraviti nijedan par). Prilikom uparivanja morate paziti da ružnoća uparivanja bude minimalna moguća.

Ružnoća nekog uparivanja definira se kao maksimalna apsolutna razlika veličina lijeve i desne tenisice po svim parovima.

Ulazni​ podaci

U prvom retku ulaza nalazi se prirodan broj \(N\) i \(M ( 1 \leq N, M \leq 100 000 )\), redom broj lijevih i desnih tenisica. U drugom retku nalazi se \(N\) prirodnih brojeva \(L\) i \(( 1 \leq L\) i \(\leq 10 ^ 9 )\), veličine lijevih tenisica. U trećem retku nalazi se \(M\) prirodnih brojeva \(D\) i \(( 1 \leq D\) i \(\leq 10 ^ 9 )\), veličine desnih tenisica.

Izlazni podaci

Ispišite minimalnu ružnoću nekog uparivanja.

Bodovanje

U test podacima ukupno vrijednima \(20 \%\) bodova vrijedit će \(N\) = \(M\) . U test podacima ukupno vrijednima dodatnih \(50 \%\) bodova vrijedit će N, \(M \leq 5 000\).

Primjeri test​ podataka

Ulaz
2 3
2 3
1 2 3
Izlaz
0
Ulaz
4 3
2 39 41 45
39 42 46
Izlaz
1
Ulaz
5 5
7 6 1 2 10
9 11 6 3 12
Izlaz
4

Comments

There are no comments at the moment.