最新消息:380元/半年,推荐全网最具性价比的一站式编程学习平台码丁实验室

信息学奥赛题库- 开餐馆

C++ 少儿编程 1258浏览 0评论

友情提示:380元/半年,儿童学编程,就上码丁实验室

【题目描述】

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

【输入】

输入第一行是整数 $T(1≤T≤1000)$,表明有T组测试数据。紧接着有$T$组连续的测试。每组测试数据有$3$行。

第1行:地点总数$n(n<100)$, 距离限制$k(k>0 且 k<1000)$;

第2行:n 个地点的位置$m_1 , m_2, … m_n(1000000>m_i>0$ 且为整数,升序排列);

第3行:n 个地点的餐馆利润$p_1,p_2,…p_n(1000>p_i>0$ 且为整数)。

【输出】

对于每组测试数据可能的最大利润。

【输入样例】

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

【输出样例】

40
30

您必须 登录 才能发表评论!