#CF1945D. 猫头鹰塞拉芬

猫头鹰塞拉芬

D. 猫头鹰塞拉芬

每个测试用例时间限制22每个测试用例内存限制256256 兆字节

一群人排成一队,一共有 nn 个人,编号从 i=1i=1 开始,排队向猫头鹰塞拉芬询问人生的意义。不幸的是,基里尔忙着编写这道题目的题面,所以他来得稍晚,站在了这 nn 个人的队尾。基里尔对自己的位置非常不满,于是他决定贿赂排在他前面的一些人。

对于队列中的第 ii 个人,基里尔知道两个数值 aia_ibib_i。 如果当前基里尔站在位置 ii,那么他可以选择任意一个满足 j<ij < i 的位置 jj,并与位置 jj 的人交换位置。 在这种情况下:

  • 基里尔需要付给位置 jj 的人 aja_j 个金币;
  • 并且对于每一个满足 j<k<ij < k < ikk,基里尔都要付给位置 kk 的人 bkb_k 个金币。

基里尔可以进行任意次这样的操作。

基里尔很节俭,希望花费尽可能少的金币,但他又不想等太久,所以他希望自己最终能排在队列的mm 个位置

请你帮助基里尔计算:为了排进前 mm 个位置,他最少需要花费多少金币。

输入格式

输入包含多组测试数据。 第一行包含一个整数 tt1t1041 \le t \le 10^4),表示测试用例的数量。

每组测试用例如下:

  • 第一行包含两个整数 nnmm1mn2×1051 \le m \le n \le 2\times10^5),分别表示除基里尔外的总人数、基里尔能接受的最大最终位置。
  • 第二行包含 nn 个整数 a1,a2,,ana_1,a_2,\dots,a_n1ai1091 \le a_i \le 10^9)。
  • 第三行包含 nn 个整数 b1,b2,,bnb_1,b_2,\dots,b_n1bi1091 \le b_i \le 10^9)。

保证所有测试用例的 nn 之和不超过 2×1052\times10^5

输出格式

对于每组测试用例,输出一个整数 —— 基里尔需要花费的最少金币数

样例输入

4
4 2
7 3 6 9
4 3 8 5
6 2
6 9 7 1 8 3
5 8 8 1 4 1
7 7
7 2 9 2 6 5 9
9 1 10 7 1 4 9
2 1
2 3
1 1

样例输出

14
22
9
3