EduBrick

Разбиение по опорному

1000 мс · 256 МБ · всё или ничего

Дан массив и опорное значение xx. Переставьте элементы так, чтобы сначала шли все меньшие xx, затем все равные, затем все большие.

Внутри каждой из трёх групп порядок элементов должен остаться таким же, как в исходном массиве.

Формат ввода

В первой строке числа nn (1n1051 \le n \le 10^5) и xx (по модулю не превосходит 10910^9). Во второй — nn целых чисел, по модулю не превосходящих 10910^9.

Формат вывода

Массив после разбиения.

Примеры

ввод
5 3
5 1 3 3 9
вывод
1 3 3 5 9
Войдите, чтобы отправлять решения.