Вы играете с очень длинной полоской, состоящей из $$$10^{18}$$$ белых клеток и пронумерованной слева направо числами $$$0$$$, $$$1$$$, $$$2$$$ и так далее. Вы управляете особым указателем, который первоначально указывает на клетку $$$0$$$. Также у вас есть кнопка «Shift», которую вы можете зажимать.
За один шаг, вы можете сделать одно из трех действий:
Ваша задача — покрасить хотя бы $$$k$$$ клеток, но есть ограничение: вам заданы $$$n$$$ отрезков $$$[l_i, r_i]$$$ — вы можете красить только клетки, которые принадлежат этим отрезкам, т. е. вы можете покрасить клетку $$$x$$$ только если $$$l_i \le x \le r_i$$$ для некоторого $$$i$$$.
Какое наименьшее количество шагов вам нужно выполнить, чтобы покрасить хотя бы $$$k$$$ клеток в черный?
В первой строке задано одно целое число $$$t$$$ ($$$1 \le t \le 10^4$$$) — количество наборов входных данных.
В первой строке каждого набора заданы два целых числа $$$n$$$ и $$$k$$$ ($$$1 \le n \le 2 \cdot 10^5$$$; $$$1 \le k \le 10^9$$$) — количество отрезков и желаемое количество черных клеток.
Во второй строке заданы $$$n$$$ целых чисел $$$l_1, l_2, \dots, l_n$$$ ($$$1 \le l_1 < l_2 < \dots < l_n \le 10^9$$$), где $$$l_i$$$ — это левая граница $$$i$$$-го отрезка.
В третьей строке заданы $$$n$$$ целых чисел $$$r_1, r_2, \dots, r_n$$$ ($$$1 \le r_i \le 10^9$$$; $$$l_i \le r_i < l_{i + 1} - 1$$$), где $$$r_i$$$ — это правая граница $$$i$$$-го отрезка.
Дополнительные ограничения на входные данные:
Для каждого набора входных данных выведите наименьшее количество шагов, необходимых для покраски хотя бы $$$k$$$ клеток в черный, или $$$-1$$$, если это невозможно.
42 31 31 44 2010 13 16 1911 14 17 202 31 31 102 499 999999999100 1000000000
8 -1 7 1000000004
В первом наборе входных данных, одна из оптимальных стратегий — следующая:
Во втором наборе входных данных, мы можем покрасить только $$$8$$$ клеток, а нам нужно покрасить $$$20$$$ клеток.
В третьем наборе, одна из оптимальных стратегий — следующая:
Название |
---|