https://leetcode.com/problems/sum-of-all-odd-length-subarrays/description/ Easy

Условие

Дан массив положительных целых arr. Подмассивом называется непрерывная подпоследовательность массива. Требуется вернуть сумму всех подмассивов нечётной длины.

Решение

class Solution {
    fun sumOddLengthSubarrays(arr: IntArray): Int {
        var total = 0
        for (i in arr.indices) {
            val startCount = i + 1
            val endCount = arr.size - i
            val subarraysCount = startCount * endCount
            val oddCount = (subarraysCount + 1) / 2
            total += arr[i] * oddCount
        }
        return total
    }
}