QOJ.ac

QOJ

时间限制: 6.0 s 内存限制: 2048 MB 总分: 100 难度: [显示] 可 Hack ✓

#16330. Potential Peak

统计

一个跑步俱乐部正在招募新成员并快速发展,每天恰好有一名新成员加入。每位成员加入时都有一个特定的初始实力水平,并根据他们的到来顺序被分配一个唯一的 ID。

在每天结束时,教练喜欢计算一个他称为俱乐部“总潜力”的指标。这个值就是当前所有成员个人潜力的总和。为了保持成员们的积极性,成员的潜力是通过一个涉及单次高强度训练的假设性“如果……会怎样”场景来计算的。

在这个虚构的训练中,成员可以选择付出一定量的努力来暂时提升自己的实力水平。他们每付出 $1$ 单位的努力,其实力水平就会恰好提升 $1$ 单位。作为回报,对于当前俱乐部中满足以下条件的每一位其他成员,他们将获得 $1$ 单位的“快乐值”:

  • 加入俱乐部的时间严格晚于他们;且
  • 原本的实力水平严格高于他们,但由于这次训练,现在被他们追平或超越。

注意,在此计算过程中,只有该成员的实力水平会提升,而所有其他成员的实力水平仍保持在原始值不变。

单个成员的潜力定义为:通过最优地选择努力程度,他们所能获得的净收益(快乐值减去努力值)的最大可能值。这些训练完全是理论上的;它们仅用于教练的每日报告,成员们实际的实力水平日复一日保持不变。

你的任务是帮助教练计算在招募期的每一天结束时俱乐部的总潜力。

输入格式

输入的第一行包含一个整数 $n$ ($1 \le n \le 10^5$),表示俱乐部招募成员的天数。

第二行包含 $n$ 个整数 $a_1, a_2, \dots, a_n$ ($1 \le a_i \le n$),其中 $a_i$ 表示在第 $i$ 天加入的成员的初始实力水平。

输出格式

在单行中输出 $n$ 个整数。第 $k$ 个整数应当是第 $k$ 天结束时俱乐部的总潜力。

样例

输入样例 1

8
1 2 3 1 2 3 2 3

输出样例 1

0 0 0 0 1 3 5 9

输入样例 2

1
1

输出样例 2

0

说明

样例 1 说明:在第 5 天,有 5 名成员,其实力水平为 $[1, 2, 3, 1, 2]$。对于成员 1: 有 3 名较晚加入且实力严格高于他的成员:成员 2、成员 3 和成员 5。成员 1 的最大潜力为 $1$,可以通过以下任一策略达到:

  • 如果成员 1 付出 $1$ 单位的努力,他的实力将变为 $2$。他将追平或超越成员 2 和成员 5。快乐值为 $2$ 单位,净收益为 $2 - 1 = 1$ 单位。
  • 如果成员 1 付出 $2$ 单位的努力,他的实力将变为 $3$。他将追平或超越成员 2、成员 3 和成员 5。快乐值为 $3$ 单位,净收益为 $3 - 2 = 1$ 单位。

其他成员的最大潜力均为 $0$。因此,第 5 天的总潜力为 $1$。

在第 8 天,有 8 名成员,其实力水平为 $[1, 2, 3, 1, 2, 3, 2, 3]$。最优努力值为 $[2, 1, 0, 2, 1, 0, 1, 0]$,对应的最大潜力分别为 $[4, 2, 0, 2, 1, 0, 0, 0]$。

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.