AT_dp_q Flowers
题目描述
有 $N$ 朵花排成一排。对于每个 $i$($1 \leq i \leq N$),从左往右第 $i$ 朵花的高度为 $h_i$,美丽值为 $a_i$。其中 $h_1, h_2, \ldots, h_N$ 互不相同。
太郎君想通过拔掉一些花,使得剩下的花满足以下条件:
- 从左到右看,剩下的花的高度严格递增。
请你求出剩下的花的美丽值总和的最大值。
输入格式
输入以如下格式从标准输入读入:
> $N$
> $h_1\ h_2\ \ldots\ h_N$
> $a_1\ a_2\ \ldots\ a_N$
输出格式
请输出剩下的花的美丽值总和的最大值。
说明/提示
## 限制条件
- 所有输入均为整数。
- $1 \leq N \leq 2 \times 10^5$
- $1 \leq h_i \leq N$
- $h_1, h_2, \ldots, h_N$ 互不相同。
- $1 \leq a_i \leq 10^9$
## 样例解释 1
保留从左到右第 $2$、$4$ 朵花即可。此时高度依次为 $1, 2$,满足严格递增。美丽值总和为 $20 + 40 = 60$。
## 样例解释 2
一开始就已经满足条件。
## 样例解释 3
答案可能超出 32 位整数范围。
## 样例解释 4
保留从左到右第 $2$、$3$、$6$、$8$、$9$ 朵花即可。
由 ChatGPT 4.1 翻译