В списке мне нужно заменить каждый элемент суммой этого элемента и всех предыдущих. Первый элемент не требуется менять.
Пример: список (1.0, 2.0, 3.0, 4.0) необходимо преобразовать (1.0, 3.0, 6.0, 10.0). Я ищу самый краткий и правильный путь.
Я долго гуглял и не мог найти никакой полезной информации о преобразовании элемента по сумме его предыдущих. Также я не смог найти нужную функцию в стандартной библиотеке на Kotlinlang.org. Пожалуйста, помогите решить эту проблему.
fun accumulate(list: MutableList<Double>): MutableList<Double> {
if (list.isEmpty()) return list
else for (i in 0 until list.size) {
if (i == list.indexOf(list.first())) list[i] = list.first()
else list[i] = list.sumByDouble { it } // here's my problem
}
return list
}