1184 公交站间的距离 public int distanceBetweenBusStops(int[] distance, int start, int destination) {
公交站间是循环的
要求最小值
不管顺时针或者逆时针, 距离是一样的
返回 整数
- 定义sum=0
- 遍历求和整个distance数组
- 定义sum1=0
- 如果start小
- 求从start到destination的和
- 如果start大
- 求从start到destination的和
- 返回 sum1 和sum-sum1 间的较小值
public int distanceBetweenBusStops(int[] distance, int start, int destination) {
int sum = 0;
for(int i = 0; i < distance.length; i++) sum += distance[i];
int sum1 = 0;
if(start < destination) {
for(int i = start; i < destination; i++) sum1 += distance[i];
} else {
for(int i = destination; i < start; i++) sum1 += distance[i];
}
return Math.min(sum1, sum - sum1);
}