分配
中文题目为机翻,原题目请参考英文题面
给您两个长度为 n 的序列 a,b,以及一个大小为 n×n 的成本矩阵 A。矩阵 A 满足 Ai,j≥Ai,j−1 对于所有的 1≤i≤n, 1<j≤n. 你可以任意多次进行下面的操作:
- 选择三个整数 l,r,x 满足 1≤l≤r≤n 和 1≤x≤n,然后为 l 和 r 之间的所有索引 i 赋值 x 到 ai。这个操作的代价是 Ax,r−l+1。
对于 [0,k] 中的所有 i,求使 a 与 b 最多相差 i 位置的最小成本总和。
输入
第一行包含一个整数 T(1≤T≤10),表示测试案例的数量。
对于每个测试用例,第一行包含两个整数 n,k(1≤n≤100,1≤k≤10)。
第二行包含 n 个整数 a1,a2,…,an(1≤ai≤n),表示序列 a。
第三行包含 n 整数 b1,b2,…,bn(1≤bi≤n),表示序列 b。
接下来的 n 行,每行包含 n 个整数。第 i 行中的第 j 个整数表示 Ai,j(1≤Ai,j≤106)。
可以保证,对于所有的 $1 \leq i \leq n, 1 < j \leq n, A_{i,j} \geq A_{i,j-1}$。
输出
对于每个测试用例,输出一行,用 k+1 整数表示答案
示例
1
5 2
1 5 3 2 2
2 4 5 4 2
3 3 3 4 4
2 2 3 4 5
3 4 5 6 7
1 1 1 2 4
4 5 5 5 5
7 3 1