代码请进行一定修改后使用,本代码保证100%通过率。
本题两题题目有些差别,但是代码是一样的,提供了java、c++、python、JsNode四种代码
题目描述
一个快递公司希望在一条街道建立新的服务中心。公司统计了该街道中所有区域在地图上的位置,并希望能够以此为依据为新的服务中心选址: 使服务中心到所有区域的距离的总和最小。
给你一个数组positions,其中positions = left, right 表示第个区域在街道上的位置,其中e代表区域的左侧的起点,richt代表区域的右侧终点,假设服务中心的位置为location:
- 如果第i个区域的右侧终点right满足 right < location,则第i个区域到服务中心的距离为 ocation - right;
- 如果第i个区域的左侧起点left 满足 eft > location,则第i个区域到服务中心的距离为left - location;
- 如果第i个区域的两侧left,right满足left <= location <= right,则第i个区域到服务中心的距离为0
选择最佳的服务中心位置为location,请返回最佳的服务中心位置到所有区域的距离总和的最小值。
输入描述
先输入区域数组positions的长度n (1<= n <= 10^5)
接下来n行每行输入成对的left和right值,以空格隔开
-10^9 <left<=10^9
-10^9 <right<= 10^9