Задать свой вопрос   *более 50 000 пользователей получили ответ на «Решим всё»

Задача 70843 Для данного одномерного массива с...

Условие

Для данного одномерного массива с ненулевыми числами (реализованного как список list) проверить, выполняется ли условие: элементы массива образуют знакочередующуюся последовательность.

Для выполнения данной задачи нужно реализовать функцию check, получающую массив в качестве входного параметра функции и возвращающую True, если условие выполняется и False, если нет.

Ввод/вывод в функции (и вне функции тоже) осуществлять не нужно.

На проверку нужно отправлять код с функцией, без кода запуска функции. Проверка осуществляется запуском вашего кода с последующим запуском теста вида print(check([1, 2, 3]));

нет в списке ВУЗ 168

Решение

def check(arr):
if len(arr) < 2:
return True
sign = arr[0] > 0
for i in range(1, len(arr)):
if (arr[i] > 0) != sign:
sign = not sign
else:
return False
return True


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

arr1 = [1, -2, 3, -4, 5]
print(check(arr1)) # True

arr2 = [1, -2, 3, -4, -5]
print(check(arr2)) # False

arr3 = [1]
print(check(arr3)) # True

arr4 = [-1, 2, -3, 4]
print(check(arr4)) # True

Написать комментарий

Меню

Присоединяйся в ВК