eolymp
bolt
Try our new interface for solving problems
Problems

k-сортировка

k-сортировка

В этом году Гриша поступил в Университет ИТ. В Университете ИТ очень много новых предметов, интересных и не очень. Особенно Грише нравится предмет "Алгоритмы и структуры данных". На последней лекции были рассказаны алгоритмы сортировки. Гриша - очень амбициозный молодой человек и хочет изобрести свой алгоритм, который впоследствии будет назван именем его любимого дедушки. Вдохновившись чтением многотомника Кнута, Гриша решил модернизировать какой-нибудь уже существующий алгоритм сортировки натуральных чисел, наложив следующее ограничение. Любые два элемента можно менять местами, только если они сравнимы по модулю некоторого натурального числа \textbf{k}, то есть дают одинаковые остатки при делении на \textbf{k}. Но все инновационные методы требуют проверки, поэтому Гриша обратился за помощью к Вам! Проверьте, сможет ли новая версия алгоритма отсортировать заданный массив натуральных чисел. \InputFile Первая строка входного файла содержит два числа \textbf{n} (\textbf{1} ≤ \textbf{n} ≤ \textbf{1000}) и \textbf{k} (\textbf{1} ≤ \textbf{k} ≤ \textbf{10^9}) - количество элементов в массиве и число, по модулю которого сравниваются элементы массива. Вторая строка входного файла содержит \textbf{n} целых чисел \textbf{a_i} - элементы массива (\textbf{1} ≤ \textbf{a_i} ≤ \textbf{10^9}). \OutputFile В выходной файл выведите \textbf{YES}, если алгоритм сможет отсортировать заданный массив и \textbf{NO} - в обратном случае.
Time limit 1 second
Memory limit 256 MiB
Input example #1
5 2
5 4 3 2 1
Output example #1
YES
Author П.Кротков, А.Малова
Source Четвертая олимпиада, Базовый уровень. 12 ноября 2011 года.