第38917题 程序题
选数

题目描述

给定两个包含 $n$ 个整数的数组 $a = [a_1, \dots, a_n]$ 与 $b = [b_1, \dots, b_n]$。你需要指定若干下标 $p_1 < \dots < p_k$($1 \le k \le n$)使得以下条件成立:

  • $1 \le p_i \le n$($1 \le i \le k$);
  • $p_{i+1} \ge p_i + b_{p_i}$($1 \le i < k$)。

你需要在满足以上条件的前提下最大化 $\sum_{i=1}^{k} a_{p_i}$,也即最大化数组 $a$ 对应下标的整数之和。

输入格式

第一行,一个正整数 $n$,表示数组长度。

第二行,$n$ 个非负整数 $a_1, a_2, \dots, a_n$,表示数组 $a$。

第三行,$n$ 个非负整数 $b_1, b_2, \dots, b_n$,表示数组 $b$。

输出格式

一行,一个整数,表示在满足下标条件的前提下,数组 $a$ 对应下标的整数之和的最大值。

样例

输入样例 1

4
1 2 3 4
3 3 1 1

输出样例 1

7

输入样例 2

6
1 1 4 5 1 4
1 2 3 2 1 0

输出样例 2

11

数据范围

对于 40% 的测试点,保证 $2 \le n \le 10^3$。

对于所有测试点,保证 $2 \le n \le 10^5$,$0 \le a_i \le 10^9$,$0 \le b_i \le n$。

{{ option.label }}
子题{{ index + 1 }} {{ child.type_label }}
{{ option.label }}
✓ 正确 ◐ 部分正确 ✗ 错误
编辑模式
程序运行统计
暂无判题统计
知识点:
提交{{ questionInfo.stats ? questionInfo.stats.submit_count : 0 }}次 正确率{{ statsAccuracy }}%
答案解析