Людина-Павук у Баку
Коли Людина-Павук дізнався, що в Баку багато високих будівель, він негайно вирішив вирушити туди. Побачивши ці висотки, він не зміг втриматися і почав безперервно стрибати з однієї будівлі на іншу.
У Баку є n будівель, і висота i-ї будівлі становить h[i]
метрів.
Після тривалого спостереження ви помітили, що Людина-Павук може стрибнути з i-ї будівлі на j-у лише тоді, коли остача від ділення h[i]
на h[j]
дорівнює k.
Ваше завдання — визначити для кожної будівлі, на скільки інших будівель Людина-Павук може стрибнути безпосередньо з цієї будівлі.
Вхідні дані
У першому рядку подано два цілі числа n (1 ≤ n ≤ 3 * 10^5
) та k (0 ≤ k ≤ 10^6
). У наступному рядку наведено n цілих чисел h[1]
, h[2]
, ..., h[n]
(1 ≤ h[i]
≤ 10^6
).
Вихідні дані
Виведіть n цілих чисел, розділених пробілами, в одному рядку. i-е з цих чисел має дорівнювати кількості інших будівель, на які Людина-Павук може безпосередньо стрибнути з i-ї будівлі.
Приклади
Примітка
У третьому тесті можна стрибнути з будівлі 1 на будь-яку іншу будівлю. З будівлі 2 не можна стрибнути на жодну іншу будівлю. Можна стрибати лише з будівлі 3 на будівлю 2. Можна стрибати лише з будівлі 4 на будівлю 3. Можна стрибати з 5-ї будівлі на 2-у та 4-у будівлі.