当前位置:网站首页>【1184. 公交站间的距离】
【1184. 公交站间的距离】
2022-07-24 21:52:00 【千北@】
来源:力扣(LeetCode)
描述:
环形公交路线上有 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 <= 104
- distance.length == n
- 0 <= start, destination < n
- 0 <= distance[i] <= 104
方法:一次遍历

class Solution {
public:
int distanceBetweenBusStops(vector<int>& distance, int start, int destination) {
if (start > destination) {
swap(start, destination);
}
return min(accumulate(distance.begin() + start, distance.begin() + destination, 0),
accumulate(distance.begin(), distance.begin() + start, 0) +
accumulate(distance.begin() + destination, distance.end(), 0));
}
};
执行用时:0 ms, 在所有 C++ 提交中击败了100.00%的用户
内存消耗:8.5 MB,在所有 C++ 提交中击败了24.60%的用户
复杂度分析
时间复杂度: O(n),其中 n 是数组 distance 的长度。
空间复杂度: O(1),只需要额外的常数级别的空间。
author:LeetCode-Solution
边栏推荐
- C# 使用SQLite
- 单调栈结构
- Day10: declarative transaction control
- ACL 2022 | 基于最优传输的对比学习实现可解释的语义文本相似性
- ASP. Net core 6.0 data validation based on model validation
- From violent recursion to dynamic programming, memory search
- Esp32485 air temperature and humidity test
- Maixll dock QR code recognition
- SQL语言的通用语法及分类(二)
- H5 online CAD background reading and writing CAD files
猜你喜欢

《ArchSummit:珍爱微服务底层框架演进》

Web3安全 Go+Security

Description of differences between esp32c3 led PWM use and esp32

Gradle学习集合整合

Morris traversal

Segment tree,,

一键编译安装redis6.2.4

Application programming of communication heartbeat signal for communication abnormality judgment

Morris遍历

VScode默认输出到调试控制台如何调整到终端以及两者中的乱码问题
随机推荐
Ue5 reports an error using the plug-in quixel Bridge
From Fibonacci sequence to matrix fast power technique
ASP. Net core 6.0 data validation based on model validation
Mathematical derivation in [pumpkin Book ml] (task4) neural network
Boundary extraction of PCL point cloud processing (58)
ACL 2022 | 基于最优传输的对比学习实现可解释的语义文本相似性
Using FRP to achieve intranet penetration
Gradle 学习 ----Gradle 进阶说明
How to adjust the default output of vscode to the debugging console to the terminal and the problem of garbled code in both
10 key points and 5 measures for good project management
PCL点云处理之均匀采样抽稀(六十一)
Update structure of maximum or minimum value in the window - maximum value in the window
Pyqt5 uses qfile and qdatastream to read and write binary files
【数据库学习】Redis 解析器&&单线程&&模型
Gradle learning - getting started with gradle
Helm -- a powerful package management tool for kubernetes applications
Leetcode 102. sequence traversal of binary tree
From violent recursion to dynamic programming, memory search
Gee - dataset introduction mcd12q1
PCL点云处理之pcd文件转txt文件(单个或多个批量转换)(六十三)