Решение
fun distanceBetweenBusStops(distance: IntArray, start: Int, destination: Int): Int {
// Определяем меньший и больший индекс
var min = start
var max = destination
if (min > max) {
val temp = min
min = max
max = temp
}
var direct = 0 // Сумма расстояний по часовой стрелке
var total = 0 // Общее расстояние по кругу
for (i in distance.indices) {
total += distance[i] // Считаем общее расстояние
if (i in min until max) {
direct += distance[i] // Считаем расстояние в прямом направлении
}
}
// Выбираем минимальное расстояние между прямым и обратным маршрутом
return if (direct < total - direct) direct else total - direct
}