День народження Сакурако#11712

День народження Сакурако

1 секунда
256 мегабайтів
Легка

Сьогодні день народження Сакурако, тому ви вирішили зробити гарний подарунок. Ви вважаєте, що найкращий подарунок — це масив із однакових цілих чисел. На жаль, ви не змогли знайти такий масив. Однак, ви розумні й можете змінювати будь-який елемент масиву рівно на за одну операцію. Іншими словами, якщо у вас є масив , ви можете вибрати ціле число (1 \leq i \leq n) і замінити a_i на a_i - k або a_i + k. Ви хочете зробити Сакурако щасливою, тому потрібно визначити, чи можна зробити всі елементи масиву однаковими.

Наприклад, якщо у вас є масив [10, 16, 12, 10, 20] і k = 2, ви можете зробити всі елементи рівними . Для цього додайте до першого та четвертого елементів (a_1 + k = 10 + 2 = 12), відніміть від другого елемента двічі (a_2 - 2 \cdot k = 16 - 4 = 12), не змінюйте третій елемент, та відніміть від п'ятого елемента чотири рази (a_5 - 4 \cdot k = 20 - 8 = 12).

Вхідні дані

Перший рядок містить одне ціле число (1 \leq t \leq 10^5) — кількість масивів.

Кожен масив описується двома рядками.

Перший рядок містить два цілих числа і (1 \leq n \leq 2 \cdot 10^5, 1 \leq k \leq 10^9).

Другий рядок містить цілих чисел a_1, \ldots, a_n (1 \leq a_i \leq 10^9).

Гарантується, що сума по всіх тестах не перевищує 2 \cdot 10^5.

Вихідні дані

Для кожного масиву виведіть "YES", якщо можна зробити всі елементи однаковими, або "NO" інакше.

Приклади

Приклад

Loading
Loading

Примітка

Перший приклад пояснено вище.

У другому прикладі відповідь — "YES", адже можна зробити всі числа рівними .

У третьому прикладі відповідь — "NO", адже можна довести, що п'ятий елемент не вдасться зробити рівним жодному іншому елементу масиву після будь-якої кількості операцій.

Оцінювання

  1. (3 бали): k = 2;

  2. (8 балів): a_i \leq 100 для всіх масивів;

  3. (18 балів): n \leq 1000 для всіх масивів; гарантовано, що сума по всіх тестах не перевищує .

  4. (21 бал): без додаткових обмежень.