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

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

import random

N = random.randrange(1,15)
print("N = ",N)

L1 = [random.randint(1, 7) for i in range(N)]
print("Initial:")
print(L1)

m = max(L1)
print("Maximum:",m)
L2 = [i for i, j in enumerate(L1) if j == m]
print("Indices of max-s:")
print(L2)

max_first = min(L2)
max_last = max(L2)
if max_first == max_last:
print("0, single maximum")
else:
amount = max_last - max_first - 1
print("Amount between maximums:",amount)

Добавить комментарий


Защитный код
Обновить