Решить задачу в Python:
Дан массив целых чисел. Рассмотреть отрезки массива (группы идущих
подряд чисел), состоящие из нечетных чисел. Получить наибольшую из
длин рассматриваемых отрезков.
Ответы
Ответ:
def max_odd_sequence(arr):
max_length = 0
current_length = 0
for num in arr:
if num % 2 != 0:
current_length += 1
else:
max_length = max(max_length, current_length)
current_length = 0
max_length = max(max_length, current_length)
return max_length
arr = [1, 3, 7, 4, 8, 9, 11, 15, 6, 18]
print(max_odd_sequence(arr)) # Output: 4 (отрезок [7, 4, 8, 9] содержит 4 нечетные числа)
Объяснение:
Здесь мы идем по массиву, если число нечетное то добавляем длину отрезка +1, иначе мы сравниваем длину отрезка с максимальной длиной и присваиваем ей значение если оно больше максимальной длины и сбрасываем текущую длину на 0. Последняя строка кода нужна для того чтобы сравнить последнюю нечетную последовательность с максимальной длиной.