k-сортування#2778

k-сортування

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

Цього року Грицько вступив до ІТ-університету, де познайомився з безліччю нових предметів — одні з них виявилися цікавими, інші — не дуже. З-поміж них Грицько особливо вподобав курс Алгоритми та структури даних. На одній із нещодавніх лекцій розглядалася тема алгоритмів сортування. Будучи амбітним юнаком, Грицько прагне створити власний алгоритм сортування, який планує назвати на честь улюбленого дідуся. Натхненний ґрунтовними працями Кнута, Грицько вирішив удосконалити існуючий алгоритм сортування для натуральних чисел, запровадивши у ньому унікальне обмеження: дозволено обмінювати місцями лише ті елементи, які порівнювані за модулем натурального числа , тобто такі, що дають однаковий остаток при діленні на . Однак будь-які нововведення потребують перевірки, тож Грицько звернувся до вас по допомогу!

Визначте, чи здатен цей новий варіант алгоритму відсортувати заданий масив натуральних чисел.

Вхідні дані

Перший рядок входу містить два числа (1 \leq n \leq 1000) і (1 \leq k \leq 10^9) — кількість елементів у масиві та модуль, що використовується для порівняння.

Другий рядок містить цілих чисел a_i — елементи масиву (1 \leq a_i \leq 10^9).

Вихідні дані

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

Приклади

Приклад 1

Loading
Loading