#L4191. 「BalticOI 2023」Sequence

「BalticOI 2023」Sequence

41914191. 「BalticOI 20232023」Sequence

传统 10001000 ms 10241024 MiB
1212 通过
3838 提交

题目描述

题目译自 BalticOI 20232023 Day2「Sequence」

一列整数 (x1,,xm)(x_1,\ldots,x_m)好的,如果 x1=1x_1=1 并且对于每个 1<jm1<j\le m,要么有 xj=xj1+1x_j=x_{j-1}+1,要么对于某个 kkll 满足 0<kl<j0<k\le l<jxj=xkxlx_j=x_k\cdot x_l

例如,序列 (1,1)(1,1)(1,2)(1,2) 都是好的,但是序列 (1,3)(1,3) 不是好的。

对于给定的 nn 个整数 w1,,wnw_1,\ldots,w_n,定义一个对于 1jm1\le j\le m 都满足 1xjn1\le x_j\le n 的整数序列 (x1,,xm)(x_1,\ldots,x_m)权重

wx1++wxmw_{x_1}+\ldots+w_{x_m}

例如,给定的权重 w1=10w_1=10, w2=42w_2=42, w3=1w_3=1

  • 序列 (1,1)(1,1) 的权重为 2020
  • 序列 (1,3)(1,3) 的权重为 1111

对于 1vn1\le v\le n,定义 svs_v包含 vv 的好序列可能的最小权重

你的任务是确定 s1,,sns_1,\ldots,s_n

输入格式

第一行一个整数 nn,表示权重序列的长度。

接下来 nn 行,每行一个整数 wiw_i,表示权重序列。

输出格式

输出 nn 行,第 ii 行输出 sis_i

样例

输入

3
10
42
1

输出

10
52
53

数据范围与提示

对于全部数据,满足:

  • 1n31041\le n\le 3\cdot 10^4
  • 1wi1061\le w_i\le 10^6(对于 1in1\le i\le n

详细子任务附加限制及分值如下表。

子任务编号 附加限制 分值
11 n10n\le 10 1111
22 n300n\le 300, w1==wn=1w_1=\ldots=w_n=1 1010
33 n300n\le 300, w1==wnw_1=\ldots=w_n
44 n1400n\le 1400, w1==wn=1w_1=\ldots=w_n=1 99
55 n5000n\le 5000 4545
66 无附加限制 1515