| Codeforces Round 1051 (Div. 2) |
|---|
| Закончено |
Вы хотите купить $$$n$$$ товаров с ценами $$$a_1, a_2, \ldots, a_n$$$. Вы можете либо:
У вас есть $$$k$$$ купонов на скидку с номиналами $$$b_1, b_2, \ldots, b_k$$$. Купон номиналом $$$x$$$ позволяет вам выбрать ровно любых $$$x$$$ товаров и заплатить только за $$$x - 1$$$ самых дорогих из них, таким образом, вы можете считать, что самый дешевый товар в группе бесплатен. Каждый товар может быть включен в не более чем одну группу со скидкой, даже если он не является бесплатным. Конечно, каждый купон может быть использован не более одного раза.
Чему равно минимальное количество монет, необходимое для покупки всех $$$n$$$ товаров?
Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно целое число $$$t$$$ ($$$1 \le t \le 10^4$$$) — количество наборов входных данных. Далее следует описание наборов входных данных.
Первая строка каждого набора входных данных содержит два целых числа $$$n$$$ и $$$k$$$ ($$$1 \le n, k \le 2 \cdot 10^5$$$) — количество товаров и количество доступных купонов на скидку.
Вторая строка содержит $$$n$$$ целых чисел $$$a_1, a_2, \ldots, a_n$$$ ($$$1 \le a_i \le 10^9$$$) — цены товаров.
Третья строка содержит $$$k$$$ целых чисел $$$b_1, b_2, \ldots, b_k$$$ ($$$1 \le b_i \le n$$$) — номиналы купонов на скидку.
Гарантируется, что сумма $$$n$$$ по всем наборам входных данных не превосходит $$$2 \cdot 10^5$$$, и сумма $$$k$$$ по всем наборам входных данных не превосходит $$$2 \cdot 10^5$$$.
Выведите $$$t$$$ строк. $$$i$$$-я строка должна содержать ответ для $$$i$$$-го набора входных данных — минимальное количество монет, необходимое для покупки всех товаров в этом наборе входных данных.
55 318 3 7 2 93 1 16 11 2 6 3 3 452 31 12 2 21 11015 399 99 999 999 1232 1 4
1017101197
В первом наборе входных данных вы можете применить первую скидку к товарам номер 2, 3 и 4. Вы заплатите за два самых дорогих (3 и 7 монет), а самый дешевый получите бесплатно, в результате чего стоимость составит $$$3 + 7 = 10$$$ монет. Затем примените вторую и третью скидки к товарам номер 1 и 5, получив оба бесплатно. Общая стоимость составит $$$10$$$ монет.
Во втором наборе входных данных вы можете использовать единственную скидку на товары 2, 3, 4, 5 и 6. Среди них самым дешевым является товар 2 (стоимостью 2 монеты), который вы получите бесплатно. За оставшиеся товары в общей сложности вы заплатите $$$1 + 6 + 3 + 3 + 4 = 17$$$ монет.
В третьем наборе входных данных доступна только одна скидка. Вы можете использовать её на оба товара, получив один бесплатно и заплатив $$$1$$$ монету за другой.
| Название |
|---|


