Задачки такого типа не имеют однозначного решения, можно предложить нескольео вариантов и все они будут правильные. Слишком мало членов дано.
Вот мои версии.
а. 1; 3; 6; 4; 11; 5; 16; 6 (на нечётных местах всё время +5, на чётных +1)
б. 9; 7; 10; 4; 11; 1; 12; -2; ... (на нечётных +1, на чётных -3)
в. 3; 2; 1; 6; 5; 4; 9; 8; 7; 12; 11; 10... (тройки n;n-1;n-2; первое число тройки - последовательные числа, кратные 3)
Могу предложить ещё несколько ДРУГИХ вариантов продолжения последовательностей и все они, повторюсь, будут ПРАВИЛЬНЫМИ.
Одно только замечание: ВСЕГДА нужно указывать алгоритм или формулу, по которой последовательность строится(продолжается).
a = [1, 100, 10, 2]
a = sorted(a, reverse=True)
if (len(a) > 2):
if(a[0] != a[1] and a[1] != a[2]):
print(a[1])
else:
print(0)
else:
print(0)
Объяснение:
Итак, как я понял, абсолютный минимум и максимум это самый большой и самый маленький элемент в списке, значит нам нужно вывести второй по величине. Сортируем массив с sorted(значит мы сортируем массив и записываем результат в a, заменяя старый), причем сортируем с reverse=True так как по умолчанию он сортирует по возрастанию, а нам нужно по убыванию. Затем мы проверяем длинну списка и если в ней есть хотя бы 3 элемента(0, 1, 2 - абсолютный максимум, искомый элемент и абсолютный минимум), то выводим искомый элемент(второй элемент списка, индекс у него 1 так как счет с 0), иначе выводим 0
upd: вложенный if сравнивает первый и второй и второй и третий элементы. Если они равны, то тоже выводим ноль
Поделитесь своими знаниями, ответьте на вопрос:
10 предложений с деклораьивными знаниями