EduBrick

N. Обновление дата-центров

3000 мс · 256 МБ · всё или ничего

У каждого дата-центра есть час обновления uju_j из hh возможных. У каждого клиента данные лежат в двух дата-центрах, и их часы обновления различны — иначе данные были бы недоступны.

Нужно выбрать непустое подмножество дата-центров и сдвинуть час обновления каждого из них на единицу вперёд (по кругу: после h−1h - 1 идёт 0) так, чтобы у каждого клиента часы по-прежнему различались. Найдите наименьший размер такого подмножества.

Формат ввода

В первой строке nn, mm и hh (2≤n≤1052 \le n \le 10^5, 1≤m≤1051 \le m \le 10^5, 2≤h≤1052 \le h \le 10^5). Во второй строке — nn чисел uju_j (0≤uj<h0 \le u_j < h). В каждой из следующих mm строк — пара различных дата-центров клиента. Гарантируется, что у каждого клиента часы различны.

Формат вывода

Выведите наименьшее количество дата-центров, которые нужно сдвинуть.

Примеры

ввод
3 3 5
4 4 0
1 3
3 2
3 1
вывод
1
Разбор идеи от автора задачи. Сначала попробуйте сами.
Войдите, чтобы отправлять решения.