題目 https://leetcode-cn.com/problems/distance-between-bus-stops/
#include <stdio.h>
int distanceBetweenBusStops(int* distance, int distanceSize, int start, int destination){
int n,i;
long sum = 0,sum2=0,sum3=0;
if(start > destination){
n = destination;
destination = start;
start = n;
}
for(i=0;i<start;i++){
sum +=distance[i];
}
for(;i<destination;i++){
sum2 += distance[i];
}
sum += sum2;
for(;i<distanceSize;i++){
sum += distance[i];
}
sum3 = sum-sum2;
return (sum2<sum3?sum2:sum3);
}
int main(){
{
int distance[] = {1,2,3,4};
int start = 0;
int destination = 1;
printf("%d\n",distanceBetweenBusStops(distance,sizeof(distance)/sizeof(int),start,destination));
}
{
int distance[] = {1,2,3,4};
int start = 0;
int destination = 2;
printf("%d\n",distanceBetweenBusStops(distance,sizeof(distance)/sizeof(int),start,destination));
}
{
int distance[] = {1,2,3,4};
int start = 0;
int destination = 3;
printf("%d\n",distanceBetweenBusStops(distance,sizeof(distance)/sizeof(int),start,destination));
}
}