https://leetcode.com/problems/maximum-score-after-splitting-a-string/description/ Easy

Условие

Дана строка s, состоящая из нулей и единиц. Необходимо разделить строку на две непустые подстроки (левую и правую). Оценка разделения вычисляется как сумма количества нулей в левой подстроке и количества единиц в правой подстроке. Вернуть максимальную возможную оценку.

Решение

class Solution {
    fun maxScore(s: String): Int {
        var maxScore = 0
        for (i in 1 until s.length) {
            val left = s.substring(0, i)
            val right = s.substring(i)
            val leftZeros = left.count { it == '0' }
            val rightOnes = right.count { it == '1' }
            maxScore = maxOf(maxScore, leftZeros + rightOnes)
        }
        return maxScore
    }
}