Sobes.tech
Middle — Senior
33

Напиши функцию, которая возвращает символ с максимальным количеством подряд идущих повторений в строке?

Компании, где спрашивали
СБЕРСБЕР

Ответ от нейросети

sobes.tech AI

python def max_consecutive_char(s: str) -> str: if not s: return ''

max_char = s[0]
max_count = 1
current_char = s[0]
current_count = 1

for i in range(1, len(s)):
    if s[i] == current_char:
        current_count += 1
    else:
        if current_count > max_count:
            max_count = current_count
            max_char = current_char
        current_char = s[i]
        current_count = 1

# Проверка для последней серии символов
if current_count > max_count:
    max_count = current_count
    max_char = current_char

return max_char

Пример использования

print(max_consecutive_char('aabbbccddddde')) # Выведет 'd'


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