Правильні дошки#3007

Правильні дошки

1 секунда
64 мегабайти
Легка

У вас є прямокутна дошка розміром M \times N, де кожна клітинка має розмір 1 \times 1 і пофарбована або в чорний, або в білий колір. Дошка розфарбована у стандартний шаховий візерунок, тобто будь-які дві суміжні клітинки мають різний колір. Ми називаємо дошку правильною, якщо на ній однакова кількість чорних і білих клітинок. Над дошкою виконали кілька горизонтальних та вертикальних розрізів, поділивши її на кілька менших дощок. Кожен розріз проходить від одного краю дошки до протилежного: горизонтальні розрізи — зліва направо, а вертикальні — знизу вгору.

Напишіть програму, яка визначає, скільки з отриманих дощок є правильними.

Вхідні дані

У першому рядку міститься два натуральних числа і (1 \leq M, N \leq 10^9) — вертикальний і горизонтальний розміри дошки. У другому рядку спочатку йде число — кількість горизонтальних розрізів, далі позиції m_1, m_2, \ldots, m_K — відстані від нижнього краю дошки до кожного розрізу. Це цілі числа у зростаючому порядку (1 \leq m_1 < \ldots < m_K < M). У третьому рядку подано — кількість вертикальних розрізів, а також відстані від лівого краю до кожного розрізу n_1, n_2, \ldots, n_L (1 \leq n_1 < \ldots < n_L < N). Значення та лежать у межах від до 10^5.

Вихідні дані

Виведіть одне число — кількість правильних дощок, отриманих після виконання всіх розрізів.

Приклади

Приклад 1

Loading
Loading