问题描述 |
---|
有一个叫01的学长整天被妹纸发好人卡。这回发好人卡的妹纸很厉害,丢出的好人卡具有范围杀伤效果。离好人卡越远伤害越小,伤害计算公式是:好人卡的伤害-距离,如果这个值为负的,那么当成0,即没有伤害。 有一天,01被妹纸们堵在一条长度为m的直线道路上,妹纸们对01发了很多张好人卡,每张好人卡具有各自的伤害值以及各自落下的位置。而01只能躲在整点的位置上(即0、1、2、...、m,一共m+1个候选位置),请你帮01找一个位置,让01受到的总伤害最小。 |
输入描述 |
一个正整数n,表示测试案例的数量。 每组案例的第一行有两个正整数m和p,其中m表示道路的长度,p表示好人卡的总张数。(m<=2000,p<=500) 第二行有p个正整数,表示这p张好人卡的伤害。 第三行有p个整数(取值范围是0到m之间的整数),表示这p张好人卡落在道路中的位置 |
输出描述 |
针对每组案例,输出一个整数,表示受到伤害的最小值。 每组案例输出完要换行。 |
样例输入复制样例 |
1 10 3 3 2 4 1 5 8 |
样例输出 |
1 |
相关 |
2017级cpp上机练习题第16周第1次(指向二维数组的指针及综合) |