luogu#P11331. [NOISG 2022 Finals] Fruits

[NOISG 2022 Finals] Fruits

题目描述

超市里通常有专门的一区卖水果。

兔子 Benson\text{Benson} 常去的超市一共有 NN 个柜台用来卖 NN 种水果。柜台编号从 1N1 \sim N,水果编号从 1N1 \sim N。第 ii 种水果的美味度是 ii,购买需要花费 CiC_i 元。保证对于所有的 1i<jN1 \le i < j \le N,有 CiCjC_i \le C_j

每一个柜台都只买一种水果,每一种水果都有且仅有一个柜台售卖。现在,工作人员规定了每个柜台卖哪一种水果。第 ii 个柜台卖第 AiA_i 种水果。如果 Ai=1A_i=-1,则表示这个柜台还没有确定卖什么。

当所有柜台的水果都摆放好,Benson\text{Benson} 就会进店抢购。他会按照 1N1 \sim N 的顺序去这些柜台。当他到了一个柜台,如果他的购物车里还是空的,或当前柜台水果的美味度大于所有他购物车里的水果,那么他就会购买这种水果,将其放进购物车中。

现在你需要让商店赚到最多的钱。你需要计算怎么来摆放那些 Ai=1A_i=-1 的柜台使得利润最大化。由于 Benson\text{Benson} 很赶时间,他可能不会逛完所有柜台,所以你需要对于所有的 1kN1 \le k \le N 计算如果 Benson\text{Benson} 只逛第 1k1 \sim k 个柜台,那么这些柜台应该如何摆放最优。

输入格式

第一行,一个正整数 NN

第二行 NN 个整数,表示 AiA_i

第三行 NN 个整数,表示 CiC_i

输出格式

一行 NN 个整数,第 kk 个表示如果 Benson\text{Benson} 只逛前 kk 个柜台且水果按照最优方案摆放,商店可获得的最大钱数。

5
-1 -1 -1 -1 -1
1 1 1 1 1
1 2 3 4 5

5
-1 3 -1 -1 -1
1 2 2 2 3

3 4 7 9 9
13
-1 -1 5 6 -1 -1 7 11 -1 -1 10
-1 -1
1 1 1 1 1 1 1 1 1 1 1 1 1

1 2 3 4 5 6 6 7 8 9 9 9 9
10
-1 -1 -1 -1 5 -1 -1 -1 9 -1
5 11 24 27 35 60 72 81 91 92
92 173 245 305 305 332 356 367 406 498

提示

【数据范围】

Subtask\text{Subtask} 分值 特殊性质
00 样例
11 66 N8N\le8
22 55 对于所有 1jN1\le j\le NAj=1A_j=-1
33 1111 N200N\le200
44 1313 N2000N\le2000
55 2323 对于所有 1jN1\le j\le NCj=1C_j=1
66 4242

对于 100%100\% 的数据,1N400000,1AjN1 \le N \le 400000,1 \le A_j \le NAj=1,1Ci109A_j=-1,1 \le C_i \le 10^9