CF1768F.Wonderful Jump

省选/NOI-

通过率:0%

时间限制:4.00s

内存限制:128MB

AC君温馨提醒

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

题目描述

You are given an array of positive integers a1,a2,…,ana_1,a_2,\ldots,a_n of length nn.

In one operation you can jump from index ii to index jj (1≤i≤j≤n1 \le i \le j \le n) by paying min⁡(ai,ai+1,…,aj)⋅(j−i)2\min(a_i, a_{i + 1}, \ldots, a_j) \cdot (j - i)^2 eris.

For all kk from 11 to nn, find the minimum number of eris needed to get from index 11 to index kk.

给你一个长度为 nn 的正整数数组 a1,a2,…,ana_1,a_2,\ldots,a_n。

在一次操作中,你可以从下标 ii 跳转到下标 jj(其中 1≤i≤j≤n1 \le i \le j \le n),花费为 min⁡(ai,ai+1,…,aj)⋅(j−i)2\min(a_i, a_{i + 1}, \ldots, a_j) \cdot (j - i)^2 个 eris。

对每个 kk(从 11 到 nn),求从下标 11 到达下标 kk 所需的最少 eris 数量。

输入格式

The first line contains a single integer nn (2≤n≤4⋅1052 \le n \le 4 \cdot 10^5).

The second line contains nn integers a1,a2,…ana_1,a_2,\ldots a_n (1≤ai≤n1 \le a_i \le n).

第一行包含一个整数 nn(2≤n≤4⋅1052 \le n \le 4 \cdot 10^5)。

第二行包含 nn 个整数 a1,a2,…ana_1,a_2,\ldots a_n(1≤ai≤n1 \le a_i \le n)。

输出格式

Output nn integers — the kk-th integer is the minimum number of eris needed to reach index kk if you start from index 11.

输出 nn 个整数——其中第 kk 个整数表示从索引 11 出发,到达索引 kk 所需的最少 eris 数量。

输入输出样例

  • 输入#1

    3
    2 1 3

    输出#1

    0 1 2
  • 输入#2

    6
    1 4 1 6 3 2

    输出#2

    0 1 2 3 6 8
  • 输入#3

    2
    1 2

    输出#3

    0 1
  • 输入#4

    4
    1 4 4 4

    输出#4

    0 1 4 8

说明/提示

In the first example:

  • From 11 to 11: the cost is 00,
  • From 11 to 22: 1→21 \rightarrow 2 — the cost is min⁡(2,1)⋅(2−1)2=1\min(2, 1) \cdot (2 - 1) ^ 2=1,
  • From 11 to 33: 1→2→31 \rightarrow 2 \rightarrow 3 — the cost is min⁡(2,1)⋅(2−1)2+min⁡(1,3)⋅(3−2)2=1+1=2\min(2, 1) \cdot (2 - 1) ^ 2 + \min(1, 3) \cdot (3 - 2) ^ 2 = 1 + 1 = 2.

In the fourth example from 11 to 44: 1→3→41 \rightarrow 3 \rightarrow 4 — the cost is min⁡(1,4,4)⋅(3−1)2+min⁡(4,4)⋅(4−3)2=4+4=8\min(1, 4, 4) \cdot (3 - 1) ^ 2 + \min(4, 4) \cdot (4 - 3) ^ 2 = 4 + 4 = 8.

在第一个例子中:

  • 从 11 到 11:花费为 00;
  • 从 11 到 22:1→21 \rightarrow 2 — 花费为 min⁡(2,1)⋅(2−1)2=1\min(2, 1) \cdot (2 - 1) ^ 2 = 1;
  • 从 11 到 33:1→2→31 \rightarrow 2 \rightarrow 3 — 花费为 min⁡(2,1)⋅(2−1)2+min⁡(1,3)⋅(3−2)2=1+1=2\min(2, 1) \cdot (2 - 1) ^ 2 + \min(1, 3) \cdot (3 - 2) ^ 2 = 1 + 1 = 2。

在第四个例子中,从 11 到 44:1→3→41 \rightarrow 3 \rightarrow 4 — 花费为 min⁡(1,4,4)⋅(3−1)2+min⁡(4,4)⋅(4−3)2=4+4=8\min(1, 4, 4) \cdot (3 - 1) ^ 2 + \min(4, 4) \cdot (4 - 3) ^ 2 = 4 + 4 = 8。

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

首页