У меня есть массив целых чисел, и мне нужно получить их максимально возможное значение. Если у меня отрицательные числа и их общее количество неравномерно, я должен исключить одно из них, чтобы сделать массив положительным.
Если у меня есть 0 внутри, и это может повлиять на результат моего умножения, я должен также исключить его. Например: для [2, 5, -2] результат должен быть 10, для [-2, -5, -1, 0, 2] результат должен быть 20.
Я выполнил задачу, но Система не принимает мое решение, не могли бы вы взглянуть на мое решение, где я мог ошибиться? Я пробовал разные крайние случаи, такие как [-1], [1], [0], [0,0,0]
def answer(n):
arr = 0
res = 1
for number in n:
if number < 0:
arr += 1
n.sort()
while 0 in n: n.remove(0)
if not n:
return '0'
if len(n) == 1:
if n[0] < 0:
return '0'
elif arr % 2 != 0:
n.pop(arr - 1)
for x in n:
res *= x
return str(res)