C. Антипродуктивный
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Дан массив $$$a$$$ длины $$$n$$$ и граница $$$\ell$$$. Пару индексов $$$1\le i \lt j \le n$$$ называют опасной, если $$$a_i \cdot a_j \ge \ell$$$.

За одну операцию можно выбрать индекс $$$i$$$ и уменьшить $$$a_i$$$ на $$$1$$$ (даже если после этого $$$a_i$$$ станет равным нулю или отрицательным). Требуется определить минимальное количество операций, которые нужно применить к $$$a$$$, чтобы не осталось ни одной опасной пары индексов.

Входные данные

Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно целое число $$$t$$$ ($$$1 \le t \le 10^3$$$) — количество наборов входных данных. Далее следует описание наборов входных данных.

В первой строке каждого набора входных данных заданы целые числа $$$n$$$ и $$$\ell$$$ ($$$2\le n\le 5\cdot 10^5$$$, $$$1\le \ell\le 10^9$$$) — количество чисел в $$$a$$$ и граница соответственно.

Во второй строке заданы $$$n$$$ целых чисел $$$a_1, a_2, \ldots, a_n$$$ ($$$1 \le a_i \le 10^9$$$) — элементы массива $$$a$$$.

Гарантируется, что сумма $$$n$$$ по всем наборам входных данных не превосходит $$$5\cdot 10^5$$$.

Выходные данные

Для каждого набора входных данных выведите одно целое число: минимальное количество операций, которое нужно выполнить над массивом, чтобы каждая пара индексов не была опасной.

Пример
Входные данные
5
5 11
10 2 6 3 1
4 5
1 2 3 3
2 13
3 4
4 9
1 1 1 9
6 1000000000
1000000000 1000000000 1 1000000000 1000000000 1000000000
Выходные данные
8
2
0
1
3999999997
Примечание

В первом примере можно уменьшить каждое из $$$3$$$ чисел в середине массива до $$$1$$$, что потребует $$$1 + 5 + 2 = 8$$$ операций.

Во втором примере можно уменьшить каждое из $$$2$$$ последних чисел до $$$2$$$, что потребует $$$2$$$ операций.