Produto dos elementos restantes

Escreva uma função que retorne True se for possível particionar uma lista em um elemento e o restante, de modo que esse elemento seja igual ao produto de todos os outros elementos, sem incluí-lo.

Exemplos

can_partition([2, 8, 4, 1]) ➞ True
# 8 = 2 x 4 x 1

can_partition([-1, -10, 1, -2, 20]) ➞ False

can_partition([-1, -20, 5, -1, -2, 2]) ➞ True

Observações

  • A lista pode conter duplicatas.
  • Pode haver várias soluções; qualquer solução é suficiente para retornar True.