Чтобы стать королем Codeforces, Курони должен решить следующую задачу.
Ему даны $$$n$$$ чисел $$$a_1, a_2, \dots, a_n$$$. Помогите Курони посчитать $$$\prod_{1\le i<j\le n} |a_i - a_j|$$$. Так как ответ может быть очень большим, посчитайте его по модулю $$$m$$$.
Если вы не знакомы с короткой формой записи, $$$\prod_{1\le i<j\le n} |a_i - a_j|$$$ равно $$$|a_1 - a_2|\cdot|a_1 - a_3|\cdot$$$ $$$\dots$$$ $$$\cdot|a_1 - a_n|\cdot|a_2 - a_3|\cdot|a_2 - a_4|\cdot$$$ $$$\dots$$$ $$$\cdot|a_2 - a_n| \cdot$$$ $$$\dots$$$ $$$\cdot |a_{n-1} - a_n|$$$. Другими словами, это произведение $$$|a_i - a_j|$$$ по всем $$$1\le i < j \le n$$$.
Первая строка содержит два целых числа $$$n$$$, $$$m$$$ ($$$2\le n \le 2\cdot 10^5$$$, $$$1\le m \le 1000$$$) — количество чисел и модуль.
Вторая строка содержит $$$n$$$ целых чисел $$$a_1, a_2, \dots, a_n$$$ ($$$0 \le a_i \le 10^9$$$).
Выведите единственное число — $$$\prod_{1\le i<j\le n} |a_i - a_j| \bmod m$$$.
2 10 8 5
3
3 12 1 4 5
0
3 7 1 4 9
1
В первом примере, $$$|8 - 5| = 3 \equiv 3 \bmod 10$$$.
Во втором примере, $$$|1 - 4|\cdot|1 - 5|\cdot|4 - 5| = 3\cdot 4 \cdot 1 = 12 \equiv 0 \bmod 12$$$.
В третьем примере, $$$|1 - 4|\cdot|1 - 9|\cdot|4 - 9| = 3 \cdot 8 \cdot 5 = 120 \equiv 1 \bmod 7$$$.
Название |
---|