Middle
Dada una cadena de ceros y unos. Es necesario escribir una función func() que devuelva el número máximo de unos consecutivos. Por ejemplo: func("010111011") -> 3
sobes.tech AI
Respuesta de la IA
Вот пример функции на Go, которая возвращает максимальное количество подряд идущих единиц в строке:
package main
import (
"fmt"
)
func maxConsecutiveOnes(s string) int {
maxCount := 0
currentCount := 0
for _, ch := range s {
if ch == '1' {
currentCount++
if currentCount > maxCount {
maxCount = currentCount
}
} else {
currentCount = 0
}
}
return maxCount
}
func main() {
testStr := "010111011"
fmt.Println(maxConsecutiveOnes(testStr)) // Выведет 3
}
Функция проходит по строке, считает текущую последовательность единиц и обновляет максимум при необходимости.