CF2229G Roadworks

题目描述

在一个正在建设中的村庄里,有 $n$ 个房屋排成一排,编号从 $1$ 到 $n$。第 $i$ 个房屋的接待能力为 $h_i$。 村庄里有 $n-1$ 条道路,第 $i$ 条道路连接第 $i$ 号房屋和第 $i+1$ 号房屋,并将在第 $d_i$ 天修建完成。最初,没有任何道路被修建。 你从第 $x$ 号房屋出发,将在村庄中从第 $1$ 天待到第 $k$ 天,初始满意度为 $0$。在第 $s$ 天,事件按如下顺序发生: - 所有 $d_i = s$ 的道路会被修建; - 你可以选择移动到相邻的房屋(前提是道路已经修好),也可以选择留在当前房屋; - 你的满意度增加 $h_j$,其中 $j$ 是你当前所在的房屋编号。 请你找出经过 $k$ 天后你能获得的最大满意度。

输入格式

每个测试用例包含多组测试数据。第一行包含一个整数 $t$($1 \le t \le 10^4$),表示测试用例的组数。接下来是每组测试用例的描述。 每组测试用例的第一行包含三个整数 $n$、$k$ 和 $x$($2 \le n \le 2 \cdot 10^5$,$1 \le k \le 10^9$,$1 \le x \le n$),分别表示房屋数量、天数和起始房屋编号。 第二行包含 $n$ 个整数 $h_1, h_2, \ldots, h_n$($0 \le h_i \le 10^9$),表示每个房屋的接待能力。 第三行包含 $n-1$ 个整数 $d_1, d_2, \ldots, d_{n-1}$($1 \le d_i \le k$),表示每条道路修建的天数。 保证所有测试用例的 $n$ 的总和不超过 $2 \cdot 10^5$。

输出格式

对于每组测试用例,输出一个整数,表示经过 $k$ 天后你可以获得的最大满意度。

说明/提示

在第一个测试用例中,以下是一个最优的移动方案: - 你起始于第 $x=3$ 号房屋,满意度初始为 $0$。 - 第 $1$ 天,还没有道路被修建,你只能停留在第 $3$ 号房屋。此时满意度为 $3$。 - 第 $2$ 天,道路 $3$ 被修建。你移动到第 $4$ 号房屋,并在第 $2$、$3$、$4$、$5$、$6$、$7$ 天都停留在这里。你的满意度变为 $33$。在这期间,道路 $2$ 和 $4$ 也陆续修建完成。 - 第 $8$ 天,你移动回第 $3$ 号房屋。此时满意度为 $36$。 - 第 $9$ 天,你移动到第 $2$ 号房屋。满意度变为 $38$。 - 第 $10$ 天,道路 $1$ 被修建。你移动到第 $1$ 号房屋。满意度变为 $52$。 可以证明,无法获得比 $52$ 更大的满意度。 在第二个测试用例中,你无法在 $8$ 天内到达第 $4$ 号房屋,所以最大满意度为 $0$。 在第三个测试用例中,你可以立刻到达第 $2$ 号房屋,并在此停留 $1\,000\,000\,000$ 天。 由 ChatGPT 5 翻译