AT_arc120_a.[ARC120A] Max Add

普及-

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

对于数列 a=(a1,a2,a3,…,ak)a = (a_1, a_2, a_3, \dots, a_k),定义 f(a)f(a) 为经过以下操作后 aa 的所有元素之和。

  • 按照 i=1,2,3,…,ki = 1, 2, 3, \dots, k 的顺序,依次进行如下操作:
    将当前 aa 中的最大值加到 aia_i 上。

给定一个长度为 NN 的数列 A=(A1,A2,A3,…,AN)A = (A_1, A_2, A_3, \dots, A_N)。
对于每个 1≤k≤N1 \leq k \leq N,请你求出当 a=(A1,A2,A3,…,Ak)a = (A_1, A_2, A_3, \dots, A_k) 时的 f(a)f(a)。

输入格式

输入以如下格式从标准输入中给出。

NN A1A_1 A2A_2 A3A_3 …\dots ANA_N

输出格式

输出共 NN 行。第 kk 行输出当 a=(A1,A2,A3,…,Ak)a = (A_1, A_2, A_3, \dots, A_k) 时的 f(a)f(a)。

输入输出样例

  • 输入#1

    3
    1 2 3

    输出#1

    2
    8
    19

说明/提示

限制条件

  • 1≤N≤2×1051 \leq N \leq 2 \times 10^5
  • 1≤Ai≤1071 \leq A_i \leq 10^7
  • 输入中的所有值均为整数

样例解释 1

例如,当 a=(A1,A2,A3)a = (A_1, A_2, A_3) 时,f(a)f(a) 的计算过程如下:

  • 首先 i=1i = 1,当前 aa 的最大值为 33,将其加到 a1a_1 上。此时 a=(4,2,3)a = (4, 2, 3)。
  • 接着 i=2i = 2,当前 aa 的最大值为 44,将其加到 a2a_2 上。此时 a=(4,6,3)a = (4, 6, 3)。
  • 最后 i=3i = 3,当前 aa 的最大值为 66,将其加到 a3a_3 上。此时 a=(4,6,9)a = (4, 6, 9)。
  • 操作后的 aa 的总和为 1919,这就是 f(a)f(a) 的值。

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页