当前位置: 首页 > 网络应用技术

Leetcode 2256。最小平均差异(Python)

时间:2023-03-07 15:32:16 网络应用技术

  两个平均值应舍入到下一个整数。用最小平均返回索引。如果有多种,请弹开Smaltestone。

  笔记:

  示例1:

  示例2:

  笔记:

  1 <= nums.length <= 10^5 0 <= nums [i] <= 10^5

  根据该意图,给定的0索引数组NUM具有长度N。索引I之间的平均差异定义为NUM的上一个I + 1元素的平均值与上一个N的平均值之间的绝对差-i -1元素。应分配到最接近的整数。返回索引,平均差异很小。如果有多个此类索引,则返回最小的索引。

  这个问题显然是一个前缀,由于我们需要平均差异,因此我们必须首先找到前一个元素的总和和后一个元素的总和,因此我们需要维护两个累积添加和列表预期和背部,以及我们需要维护PREV是从正面到背面的每个位置的积累,而背面是从背面到前部的每个位置的积累。2],每个位置的每个位置都可以计算平均差异。如果平均差异较小,请使用结果记录索引并在遍历之后返回结果。在这里应注意,当索引处于最后一个位置时,因为不存在一半,您可以直接计算上prev [i] // n相对平均差异。

  时间复杂性为O(n),空间复杂性为O(n)。

  https://leetcode.com/contest/biweekly- vister-77/prblems/minimum-average-difference/

  您的支持是我最大的动力

  原始:https://juejin.cn/post/709924725888881933