Produto dos dois maiores números
Crie uma função que receba um array de inteiros e retorne o produto dos dois maiores valores distintos. Se o array contiver apenas um valor distinto, eleve esse valor ao quadrado.
Quando o valor máximo aparece mais de uma vez, ele só pode ser usado uma vez se houver outro valor distinto.
Exemplos
Program.Product(new[] { 2, 3, 1, -1, 2 }) ➞ 6
// 3 × 2 = 6
Program.Product(new[] { -2, -2, -1, -1 }) ➞ 2
// Use -2 e -1, e não -1 duas vezes.
Program.Product(new[] { 8, 8, 8 }) ➞ 64
// Se houver apenas um valor distinto, eleve-o ao quadrado.
Program.Product(new[] { 2, 8, 8, 8 }) ➞ 16
// Use 8 uma vez e o próximo valor distinto, 2.Observações
- Todos os valores de entrada são inteiros.
- Os valores podem ser positivos ou negativos.