在一个时序数据分析任务中,给定长度为 n 的正整数序列 x1,x2,…,xn,表示每个时刻的信号强度。你需要对每个 m=1,2,…,n 分别计算一个最小代价:你可以删除序列中任意位置的若干元素,删除总次数不能超过 n−m 次;每删除一个元素需要支付 k 的代价。设删除后剩下的序列为 y1,y2,…,yt,则总代价定义为 (删除次数)×k+∑i=1myi(若剩余长度不足 m,此情况不会发生,因为最多删除 n−m 次保证了剩余长度至少为 m)。每次对 m 的计算都是独立的:你从完整的原始序列开始进行删除操作。求每个 m 对应的最小可能总代价。
数据约束:序列长度 n 满足 1≤n≤1000,删除单位代价 k 满足 1≤k≤2×105,每个信号强度 xi 均为整数且 1≤xi≤2×105。测试数据组数 T 满足 1≤T≤50,且所有测试数据中 n 的总和不超过 1000。
第一行一个整数 T,表示测试数据组数。接下来每组数据包含两行:第一行两个整数 n 和 k,第二行 n 个整数 x1,x2,…,xn。
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册