Menu
CoddyTech

Squares of a Sorted Array

Recibes un arreglo de enteros nums ordenado en orden no decreciente. Puede contener valores negativos. Eleva al cuadrado cada valor y devuelve los cuadrados en un nuevo arreglo, también ordenado en orden no decreciente.

Función

sortedSquares(nums: integer-array) → integer-array
numsinteger-array
el arreglo ordenado de números enteros; se permiten los negativos
Devuelveinteger-array
el cuadrado de cada valor, ordenados en orden no decreciente

Restricciones

  • 1 ≤ nums.length ≤ 4000
  • -104 ≤ nums[i] ≤ 104
  • nums está ordenado en orden no decreciente.

Ejemplos

Entrada
nums = [-6, -2, 1, 3, 7]
Salida
[1, 4, 9, 36, 49]
Explicación
Los cuadrados en el orden original son 36, 4, 1, 9 y 49. Los valores negativos -6 y -2 dan cuadrados grandes, así que al ordenar 36 queda cerca del final: [1, 4, 9, 36, 49].

lock icon+14 pruebas ocultas al enviar

challenge icon

Para ir más allá

Elevar al cuadrado y ordenar toma O(n log n). ¿Puedes hacerlo en O(n)?

Restablecer código
def sortedSquares(nums):
    # Escribe el código aquí
Casos de prueba

Caso 1

Caso 2

Entrada

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

Esperado

[1, 4, 9, 36, 49]