Menu
CoddyTech

Squares of a Sorted Array

Você recebe um array de números inteiros nums ordenado em ordem não decrescente. Ele pode conter valores negativos. Eleve cada valor ao quadrado e retorne os quadrados em um novo array, também ordenado em ordem não decrescente.

Função

sortedSquares(nums: integer-array) → integer-array
numsinteger-array
o array ordenado de números inteiros, com negativos permitidos
Retornainteger-array
o quadrado de cada valor, em ordem não decrescente

Restrições

  • 1 ≤ nums.length ≤ 4000
  • -104 ≤ nums[i] ≤ 104
  • nums está ordenado em ordem não decrescente.

Exemplos

Entrada
nums = [-6, -2, 1, 3, 7]
Saída
[1, 4, 9, 36, 49]
Explicação
Os quadrados na ordem original são 36, 4, 1, 9 e 49. Os valores negativos -6 e -2 resultam em quadrados grandes, então a ordenação move 36 para perto do final: [1, 4, 9, 36, 49].

lock icon+14 testes ocultos ao enviar

challenge icon

Para ir além

Elevar ao quadrado e ordenar leva O(n log n). Você consegue fazer isso em O(n)?

Redefinir código
def sortedSquares(nums):
    # Escreva o código aqui
Casos de teste

Caso 1

Caso 2

Entrada

nums = [-6, -2, 1, 3, 7]

Esperado

[1, 4, 9, 36, 49]