#D1030. 开餐馆

开餐馆

题目描述

北大信息学院的同学小明毕业之后打算创业开餐馆。现在共有 nn 个地点可供选择。小明打算从中选择合适的位置开设一些餐馆。这 nn 个地点排列在同一条直线上。我们用一个整数序列 m1,m2,mnm_1, m_2, … m_n 来表示他们的相对位置。由于地段关系,开餐馆的利润会有所不同。我们用 pip_i 表示在 mim_i 处开餐馆的利润。为了避免自己的餐馆的内部竞争,餐馆之间的距离必须大于 kk。请你帮助小明选择一个总利润最大的方案。

输入格式

标准的输入包含若干组测试数据。

输入第一行是整数 T (1T1000)T\ (1 \le T \le 1000),表明有 TT 组测试数据。紧接着有 TT 组连续的测试,每组测试数据有 33 行。

11 行:地点总数 n (n<100)n\ (n < 100),距离限制 k (0<k<1000)k\ (0 < k < 1000)

22 行:nn 个地点的位置 m1,m2,mnm_1, m_2, … m_n0<mi<10000000 < m_i < 1000000 且为整数,升序排列)。

33 行:nn 个地点的餐馆利润 p1,p2,pnp_1, p_2, … p_n0<pi<10000 < p_i < 1000 且为整数)。

输出格式

对于每组测试数据在一行中输出可能的最大利润。

2
3 11
1 2 15
10 2 30
3 16
1 2 15
10 2 30
40
30