Sobes.tech
Intern
41

Бір тізбектегі бірдей сандардың ең ұзын тізбегінің ұзындығын қайтаратын функцияны жүзеге асырыңыз. Тізбектің қатар тұрған деп есептелуі үшін элементтер бастапқы тізбекте қатар тұруы керек.

Сұралған компаниялар
AvitoAvito

AI-дан жауап

sobes.tech AI

go func longestEqualSequence(nums []int) int { if len(nums) == 0 { return 0 }

maxLen := 1
currentLen := 1

for i := 1; i < len(nums); i++ {
    if nums[i] == nums[i-1] {
        currentLen++
        if currentLen > maxLen {
            maxLen = currentLen
        }
    } else {
        currentLen = 1
    }
}

return maxLen

}


Функция итерируется по слайсу, сравнивая текущий элемент с предыдущим. Если они равны, увеличивает счётчик текущей последовательности. Если нет — сбрасывает счётчик. В конце возвращает максимальную длину подряд идущей последовательности одинаковых чисел.