Intern
Bir tamsayı listesi alan ve aynı sayılardan oluşan en uzun ardışık dizinin uzunluğunu döndüren bir fonksiyon uygulayın. Dizi, öğeler orijinal listede yan yana ise ardışık kabul edilir.
sobes.tech yapay zeka
AI'dan gelen yanıt
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
}
Функция итерируется по слайсу, сравнивая текущий элемент с предыдущим. Если они равны, увеличивает счётчик текущей последовательности. Если нет — сбрасывает счётчик. В конце возвращает максимальную длину подряд идущей последовательности одинаковых чисел.