eolymp
Задачи

Положительные тесты

Положительные тесты

Лимит времени 2 секунды
Лимит использования памяти 128 MiB

Вирусолог Барыш продолжает свои математические вычисления. Он ищет эффективные способы обнаружения положительных или отрицательных тестов на коронавирус. У Барыша есть тесты на коронавирус пронумерованные от a до b. В ходе своих вычислений он выяснил, что положительные тесты удовлетворяют некоторым условиям. Таким образом, тест на коронавирус является положительным, если порядковый номер теста делится на k чисел, заранее определенных Барышем, и в то же время, не делится на m чисел, тоже заранее определенных Барышем. Вам следует помочь Барышу и выяснить сколько тестов от a до b являются положительными.

Входные данные

В первой строке заданы числа a и b (1ab10^18 ). Во второй строке заданы числа k и m (0k , m20). В третьей строке находятся k чисел x[i] (1x[i]10^18 ) - числа, на которые должен делиться положительный тест. В четвертой строке находятся m чисел y[i] (1y[i]10^18 ) – числа на которые не должен делиться положительный тест.

Выходные данные

Выведите количество положительных тестов от a до b.

Пример

Входные данные #1
5 15
1 1
2
4
Выходные данные #1
3
Входные данные #2
5 15
0 2

3 5
Выходные данные #2
5
Входные данные #3
1 100000
0 0
Выходные данные #3
100000
Автор Рашад Мамедов
Источник Финал Республиканской олимпиады Азербайджана 2019-2020 ( 17 июня 2020 )