luogu#P11290. 【MX-S6-T2】「KDOI-11」飞船

    ID: 35044 远端评测题 2000ms 512MiB 尝试: 0 已通过: 0 难度: 5 上传者: 标签>动态规划,dp贪心Special JudgeO2优化背包

【MX-S6-T2】「KDOI-11」飞船

题目背景

原题链接:https://oier.team/problems/94

题目描述

巡造了一个很牛的飞船,巡为了测试她的飞船,造了一条无限远的从起点出发的射线作为跑道。在跑道上有 nn 个加油站,第 ii 个在距离起点 pip_i 的位置,巡可以在这里花费 tit_i 的时间加编号为 xix_i 的燃油,同一个加油站的油不能加两次保证 1xi4\boldsymbol{1\leq x_i\leq 4}xi\boldsymbol{x_i} 为整数

巡的飞船牛在两个点:

  • 这个飞船油量消耗极低,在本题中可以忽略不计。也就是,我们不考虑油消耗殆尽的情况。
  • 如果给飞船加编号为 xx 的燃油,飞船的速度会从 vv 提升为 v×xv\times x。需要注意的是,燃油的效果能叠加

现在,巡给出了 qq 次询问。每次巡会将终点设在跑道上距离起点 yiy_i 的位置,从起点出发,将飞船速度设定为 11 单位每时间,途径的每个加油站可以自由选择是否加油。你需要告诉巡每次至少需要多少时间才能到达终点(即 yiy_i)。

输入格式

第一行,两个正整数 n,qn,q,表示加油站个数和询问个数。

接下来 nn 行,每行三个正整数 pi,ti,xip_i,t_i,x_i,分别表示第 ii 个加油站距离起点的距离、加油需要的时间和燃油的编号。加油站按 pip_i 严格升序给出,即 pi<pi+1p_i < p_{i + 1}。保证 1xi41\leq x_i\leq 4

接下来一行,qq 个正整数 y1,,yqy_1, \ldots, y_q,表示询问。

输出格式

qq 行,每行一个非负实数,表示答案。

本题使用自定义校验器检验你的答案是否正确,你只需要保证你的答案与标准答案相对或绝对误差不超过 10610^{-6} 即可。即如果对每个询问,假设你的答案为 xx,而标准答案为 yy,都有 $\frac{\lvert x-y\rvert}{\max(1,\lvert y\rvert)}\leq 10^{-6}$,则你的答案被认为是正确的。

4 4
1 1 1
3 1 2
8 5 2
10 100 3
1 4 10 1000
1
4
7.5
194.5

提示

【样例解释 #1】

  • 对询问 y1=1y_1=1,不加油,需要时间为 11
  • 对询问 y2=4y_2=4,不加油,需要时间为 44
  • 对询问 y3=10y_3=10,在位于起点 33 单位距离的加油站 2222 号燃油,速度提升为 22,需要时间为 3+1+1032=7.53+1+\frac{10-3}{2}=7.5

【样例 #2】

见附件中的 ship/ship2.inship/ship2.ans

该组样例满足测试点 131\sim 3 的约束条件。

【样例 #3】

见附件中的 ship/ship3.inship/ship3.ans

该组样例满足测试点 575\sim 7 的约束条件。

【样例 #4】

见附件中的 ship/ship4.inship/ship4.ans

该组样例满足测试点 182018\sim 20 的约束条件。

【数据范围】

对于所有测试数据,保证:1n1051\leq n\leq 10^51q1051\leq q\leq10^51p1<p2<<pn1091\leq p_1<p_2<\dots<p_n\leq 10^91ti1091\leq t_i\leq10^91xi41\leq x_i\leq41yi1091\leq y_i\leq 10^9

测试点编号 nn\leq qq\leq xix_i\in pi,yip_i,y_i\leq
131\sim 3 1010 {1,2,3,4}\{1,2,3,4\} 10910^9
44 10510^5 {1}\{1\}
575\sim 7 100100 {1,2,3,4}\{1,2,3,4\} 10001000
898\sim 9 10510^5 10510^5 {1,2}\{1,2\} 10910^9
101310\sim 13 {1,2,4}\{1,2,4\}
141714\sim 17 1010 {1,2,3,4}\{1,2,3,4\}
182018\sim 20 10510^5