CF1084A.The Fair Nut and Elevator

传统题 时间 2000 ms 内存 256 MiB 5 尝试 1 已通过 1 标签

The Fair Nut and Elevator

题目描述

公平的 Nut 住在一栋有 nn 层的楼房里。第 ii 层住着 aia_i 个人。每个人每天会使用电梯两次:一次是从自己所在的楼层到达一楼(即地面层),一次是傍晚回家时从一楼返回自己所在的楼层。

现在决定让电梯在无人使用时停在第 xx 层,但 xx 还没有确定。当某个人需要从楼层 aa 前往楼层 bb 时,电梯会按照如下流程运行:

  • 从第 xx 层(初始时电梯停在第 xx 层)移动到第 aa 层接乘客。
  • 从第 aa 层移动到第 bb 层并让乘客下电梯(如果 a=ba = b,电梯只是在该层开关一次门,但仍需从第 xx 层前往该层)。
  • 从第 bb 层返回第 xx 层。

电梯每次只运送一人,并且在运送下一个乘客前总会返回第 xx 层。电梯每经过相邻两层会消耗 1 单位电能。因此,从第 aa 层到第 bb 层需要消耗 ab|a-b| 单位电能。你的任务是帮助 Nut 选择一个最优的 xx 层,使得一天所需的最小电能消耗最少。注意,电梯最初停在第 xx 层。

输入格式

第一行包含一个整数 nn1n1001 \leq n \leq 100),表示楼层数。

第二行包含 nn 个整数 a1,a2,,ana_1, a_2, \ldots, a_n0ai1000 \leq a_i \leq 100),表示每层的人数。

输出格式

输出一行,表示最小的电能消耗单位数。

说明/提示

在第一个样例中,选择第二层作为 xx 层可以达到最优。第二层的每个人(共两人)每天消耗 44 单位电能(下楼 22,上楼 22),第三层的一个人每天消耗 88 单位电能(下楼 44,上楼 44)。4×2+8×1=164 \times 2 + 8 \times 1 = 16

在第二个样例中,选择第一层作为 xx 层可以达到最优。

由 ChatGPT 4.1 翻译

样例

3
0 2 1
16
2
1 1
4

在线编程 IDE

建议全屏模式获得最佳体验