华为OD机试 - 服务中心选址(Java & JS & Python)

Posted 伏城之外

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了华为OD机试 - 服务中心选址(Java & JS & Python)相关的知识,希望对你有一定的参考价值。

题目描述

一个快递公司希望在一条街道建立新的服务中心。公司统计了该街道中所有区域在地图上的位置,并希望能够以此为依据为新的服务中心选址:使服务中心到所有区域的距离的总和最小。

给你一个数组positions,其中positions[i] = [left, right] 表示第 i 个区域在街道上的位置,其中left代表区域的左侧的起点,right代表区域的右侧终点,假设服务中心的位置为location:

  • 如果第 i 个区域的右侧终点right满足 right < location,则第 i 个区域到服务中心的距离为 location - right;
  • 如果第 i 个区域的左侧起点left 满足 left > location,则第 i 个区域到服务中心的距离为left - location;
  • 如果第 i 个区域的两侧left,right满足left <= location <= right,则第 i 个区域到服务中心的距离为0

选择最佳的服务中心位置为location,请返回最佳的服务中心位置到所有区域的距离总和的最小值。

输入描述

第一行,一个整数N表示区域个数。

后面N行,每行两个整数,表示区域的左右起点终点。

输出描述

运行结果输出一个整数,表示服务中心位置到所有区域的距离总和的最小值。

用例

以上是关于华为OD机试 - 服务中心选址(Java & JS & Python)的主要内容,如果未能解决你的问题,请参考以下文章

华为OD机试真题 Java 实现服务中心选址2023 Q1 | 200分

华为OD机试题,用 Java 解新学校选址问题

华为OD机试真题 JS 实现服务中心选址2023 Q1 | 200分

华为OD机试真题 Python 实现服务中心选址2023 Q1 | 200分

华为OD机试真题 C++ 实现服务中心选址2023 Q1 | 200分

华为OD机试真题 Python 实现服务中心选址2023 Q1 | 200分