|Comprimir coordenadasMedio
Ejercicio00:00

¿Quieres un reto mayor?

Resuelve en 10:00

info

Importante: Para que se registre el resultado tienes que iniciar sesión.

Comprimir coordenadas

Medio25 pts·Arrays

Enunciado

Comprimir coordenadas

Dado un array de enteros, reemplaza cada valor por su rango comprimido: el índice 0-based que ese valor tendría en la lista de valores únicos ordenados de menor a mayor.

Esta técnica se conoce como coordinate compression y es fundamental en algoritmos donde los valores pueden ser muy grandes pero solo importa su orden relativo.

Ejemplo

// Entrada: [40, 10, 20, 10, 30]
// Valores únicos ordenados: [10, 20, 30, 40]
//   10 → índice 0
//   20 → índice 1
//   30 → índice 2
//   40 → índice 3
// Resultado: [3, 0, 1, 0, 2]

compressCoordinates([40, 10, 20, 10, 30]); // [3, 0, 1, 0, 2]
compressCoordinates([5, 5, 5]);             // [0, 0, 0]
compressCoordinates([]);                    // []

Restricciones

  • El array puede tener elementos repetidos.
  • El array puede estar vacío — devuelve un array vacío.
  • Los valores pueden ser negativos.
  • El orden relativo debe preservarse: el elemento más pequeño siempre recibe rango 0.
Restriccionesexpand_more
  • Dificultad: Medio
  • Completa todos los test cases para obtener los 25 puntos.
  • No modificar la línea export al final del archivo.
  • Se recomienda evitar el uso de inteligencia artificial para que realmente tú practiques los ejercicios.

Puedes usar console.log() para depurar. Los resultados aparecen en la Consola de salida, no en el navegador.

Inicia sesión para reaccionar
Inicia sesión para reaccionar
Comprimir coordenadas — Medio | Coding Challenges · Coding Challenges