Minmax30. Дано целое число N и набор из N целых чисел. Найти минимальное количество подряд идущих максимальных элементов из данного набора.

Решение на Python 3:

import random

N = random.randrange(2,20)
print("N = ",N)

x_prev = random.randint(0,4)
x_max = x_prev
print(x_prev,end="; ");
smallest = N
temp_smallest = 1
for i in range(1,N):
x = random.randint(0,4)
print(x,end="; ");
if x == x_prev:
temp_smallest += 1
else:
if x_prev > x_max:
smallest = temp_smallest
x_max = x_prev
elif x_prev == x_max and temp_smallest < smallest:
smallest = temp_smallest
temp_smallest = 1
x_prev = x
if x > x_max:
smallest = temp_smallest
x_max = x_prev
elif x == x_max and temp_smallest < smallest:
smallest = temp_smallest

print()
print("Maximum:",x_max)
print("Length of Smallest Series of Max:",smallest)