Não confunda com Mínimo Múltiplo Comum .
Dada uma lista de números inteiros positivos com mais de um elemento, retorne o produto mais comum de dois elementos na matriz.
Por exemplo, o MCM da lista [2,3,4,5,6]
é 12
, pois uma tabela de produtos é:
2 3 4 5 6
---------------
2 | # 6 8 10 12
3 | # # 12 15 18
4 | # # # 20 24
5 | # # # # 30
6 | # # # # #
Obrigado DJMcMayhem pela mesa
Como 12
aparece mais vezes (duas vezes como 2*6
e 3*4
). Observe que não estamos incluindo o produto de um elemento e ele próprio, portanto, 2*2
ou 4*4
não, aparece nesta lista. No entanto, elementos idênticos ainda serão multiplicados, portanto a tabela para[2,3,3]
parece com:
2 3 3
----------
2 | # 6 6
3 | # # 9
3 | # # #
Com o MCM sendo 6
.
Em caso de empate, você pode retornar qualquer um dos elementos empatados ou uma lista de todos eles.
- Isso é código-golfe , então a contagem de bytes mais curta para cada idioma vence!
Casos de teste:
[2,3,4,5,6] -> 12
[7,2] -> 14
[2,3,3] -> 6
[3,3,3] -> 9
[1,1,1,1,2,2] -> 2
[6,200,10,120] -> 1200
[2,3,4,5,6,7,8,8] -> 24
[5,2,9,10,3,4,4,4,7] -> 20
[9,7,10,9,7,8,5,10,1] -> 63, 70, 90 or [63,70,90]
[3,3,3] -> 9
). Com todos os seus casos de teste atuais, filtrando quaisquer pares em que os elementos sejam os mesmos (mesmo para casos de teste como [2,3,3]
os mesmos valores) ainda manterão os resultados corretos, mas falharão nesse caso de teste porque nenhum permanecerá após a filtragem.