当前位置: 首页 > news >正文

【数据结构与算法 | 每日一题 | 力扣篇】力扣1184

1. 力扣1184:公交站间的距离

1.1 题目:

环形公交路线上有 n 个站,按次序从 0 到 n - 1 进行编号。我们已知每一对相邻公交站之间的距离,distance[i] 表示编号为 i 的车站和编号为 (i + 1) % n 的车站之间的距离。

环线上的公交车都可以按顺时针和逆时针的方向行驶。

返回乘客从出发点 start 到目的地 destination 之间的最短距离。

示例 1:

输入:distance = [1,2,3,4], start = 0, destination = 1
输出:1
解释:公交站 0 和 1 之间的距离是 1 或 9,最小值是 1。

示例 2:

输入:distance = [1,2,3,4], start = 0, destination = 2
输出:3
解释:公交站 0 和 2 之间的距离是 3 或 7,最小值是 3。

示例 3:

输入:distance = [1,2,3,4], start = 0, destination = 3
输出:4
解释:公交站 0 和 3 之间的距离是 6 或 4,最小值是 4。

提示:

  • 1 <= n <= 10^4
  • distance.length == n
  • 0 <= start, destination < n
  • 0 <= distance[i] <= 10^4

1.2 思路:

一共就两条路径,还是很好判断的。求出一条容易求出的路径,然后总路径一减比较一下就完事。

1.3 题解:

class Solution {public int distanceBetweenBusStops(int[] distance, int start, int destination) {int destinationSum = 0;for(int i : distance){destinationSum += i;}int max = Integer.max(start, destination);int min = Integer.min(start, destination);int dis = 0;for(int i = min; i < max; i++){dis += distance[i];}return dis < (destinationSum - dis) ? dis : (destinationSum - dis);}
}

http://www.mrgr.cn/news/27810.html

相关文章:

  • 无效的目标发行版17和无法连接Maven进程问题
  • 【Qt实现虚拟键盘】
  • python——模块 迭代器 正则
  • 前端web
  • 直流保护电路设计及保护器件参数说明和选型
  • http自动发送请求工具(自动化测试http请求)
  • 滚雪球学SpringCloud[3.3讲]:Resilience4j:现代化的容错处理详解
  • Java 入门指南:JVM(Java虚拟机)—— 双亲委派模型(Parent Delegation Model)
  • Redis基础数据结构之 quicklist 和 listpack 源码解读
  • 请求响应-05.请求-日期参数JSON参数
  • 3286、穿越网格图的安全路径
  • node express 开启多进程
  • C/C++内存管理
  • Sprie for .net8.0填报项目验收材料
  • (批处理)设置延时+设置关机倒计时
  • 【Linux】多路转接epoll
  • 【智路】智路OS air-edge 开发者手册 功能概述
  • 人脸防伪检测系统源码分享
  • USB组合设备——串口+鼠标+键盘
  • web安卓逆向之必学CSS基础知识
  • 笔试强训day13
  • CentO S入门必备基础知识
  • Linux07
  • 数据结构-树(基础,分类,遍历)
  • 【STM32】DAC数字模拟转换
  • Oracle从入门到放弃