Sobes.tech
Middle

Sıfır ve birlerden oluşan bir dize verildiğinde. max ardışık birleri döndürecek bir fonksiyon func() yazmak gerekiyor. Örneğin: func("010111011") -> 3

sobes.tech yapay zeka

AI'dan gelen yanıt

Вот пример функции на 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
}

Функция проходит по строке, считает текущую последовательность единиц и обновляет максимум при необходимости.