info
Importante: Para que se registre el resultado tienes que iniciar sesión.
Número de islas II
Difícil50 pts·Algoritmos
Enunciado
Número de islas II
Dada una cuadrícula de m × n inicialmente llena de agua, recibes una lista de operaciones. Cada operación convierte una celda (r, c) en tierra. Después de cada operación, devuelve el número de islas distintas que existen en la cuadrícula.
Dos celdas de tierra son parte de la misma isla si están conectadas horizontalmente o verticalmente.
Parámetros:
m— número de filasn— número de columnasoperations— array de pares[r, c](0-indexado)
Retorna: un array de enteros donde el elemento i es el número de islas después de la i-ésima operación.
Ejemplo
numeroDeIslasII(3, 3, [[0,0],[0,1],[1,2],[2,1],[1,1]])
// Paso a paso:
// Op 0: tierra en (0,0) → 1 isla
// Op 1: tierra en (0,1) → (0,0)-(0,1) se unen → 1 isla
// Op 2: tierra en (1,2) → isla nueva → 2 islas
// Op 3: tierra en (2,1) → isla nueva → 3 islas
// Op 4: tierra en (1,1) → une (0,1),(1,2),(2,1) → 1 isla
// Resultado: [1, 1, 2, 3, 1]
Restricciones
1 ≤ m, n ≤ 501 ≤ operations.length ≤ 200- Puede haber operaciones duplicadas (agregar tierra a una celda ya en tierra no cambia nada).
Restriccionesexpand_more
- Dificultad: Difícil
- Completa todos los test cases para obtener los 50 puntos.
- No modificar la línea
exportal 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