#CF1633D. 让它们相等

让它们相等

让它们相等

  • 时间限制:2 秒
  • 内存限制:256 MiB

题目描述

有一个长度为 nn、初始所有元素均为 11 的数组 aa,以及两个长度为 nn 的数组 b,cb,c。

一次操作可以选择下标 ii 和正整数 xx,把 aia_i 改为 ai+⌊aix⌋a_i+\left\lfloor\dfrac{a_i}{x}\right\rfloor。你至多可以执行 kk 次操作。

操作结束后,每个满足 ai=bia_i=b_i 的位置会贡献 cic_i 的收益。求最大总收益。

输入格式

第一行包含一个整数 tt,表示测试用例数量。

每个测试用例的第一行包含两个整数 n,kn,k。第二行包含 nn 个整数 bib_i,第三行包含 nn 个整数 cic_i。

输出格式

对每个测试用例输出一行一个整数,表示最大总收益。

样例输入 1

4
4 4
1 7 5 2
2 6 5 2
3 0
3 5 2
5 4 7
5 9
5 2 5 6 3
5 9 1 9 7
6 14
11 4 6 2 8 16
43 45 9 41 15 38

样例输出 1

9
0
30
167

数据范围

1≤t≤1001\le t\le100,1≤n≤10001\le n\le1000,0≤k≤1060\le k\le10^6,1≤bi≤10001\le b_i\le1000, 1≤ci≤1061\le c_i\le10^6;所有测试用例的 nn 之和不超过 10001000。

子任务编号 分值 特殊限制
1 30 每组 n≤16n \le 16
2 每组的所有 cic_i 均相等
3 40 无特殊限制