La eliminación de huecos permite marcar casillas como vacías cuando una región abierta es demasiado corta para contener cualquier bloque de pista que pudiera ocuparla legalmente.
La idea es directa: si ningún bloque pendiente cabe en una región, ninguna de sus casillas puede formar parte de la solución.
Ejemplo: una región de tres casillas no puede contener un bloque de cuatro
Toma una línea de 10 casillas con una única pista 4. Supón que la casilla 4 ya está confirmada como vacía:
??? × ??????
La marca vacía crea dos regiones abiertas. La primera solo tiene tres casillas. Un bloque de cuatro no puede caber ahí, así que las casillas 1–3 están forzadas a ser vacías.
El bloque debe encontrarse, por tanto, en la región de seis casillas situada a la derecha.
Eso no determina todavía su posición exacta. La eliminación de huecos descarta espacio imposible; después, otra técnica como el solapamiento puede encontrar casillas rellenas forzadas dentro de la región superviviente.
Qué cuenta como una región abierta
Las casillas vacías confirmadas dividen una fila o columna en zonas contiguas que todavía pueden contener bloques sin resolver. En VeyraPlay llamamos a esas zonas segmentos abiertos.
Para aplicar eliminación de huecos, hazte dos preguntas:
- ¿qué bloques de pista pendientes podrían pertenecer legalmente a este segmento?
- ¿es el segmento lo bastante largo para contener al menos uno de ellos?
Si la respuesta a la segunda pregunta es no para todos los bloques compatibles, el segmento completo es vacío.
Compara con las pistas compatibles, no solo con el número más pequeño
Un atajo frecuente consiste en comparar un hueco con la pista pendiente más pequeña. Solo es seguro si todas las pistas restantes podrían realmente ocupar esa región.
El orden de las pistas, los bloques completados, los separadores y las asignaciones de segmento ya conocidas pueden descartar algunas pistas. Un segmento de dos casillas podría ser físicamente suficiente para una pista 2, por ejemplo, y aun así estar vacío si ese 2 ya está obligado a aparecer en otra zona.
La regla precisa es:
elimina un segmento cuando ninguna asignación legal de las pistas pendientes puede colocar un bloque dentro de él.
Este matiz se vuelve especialmente importante en líneas con varias pistas.
Eliminación de huecos después de completar un bloque
Los bloques completados suelen crear las mejores oportunidades.
Cuando un bloque de pista queda terminado y correctamente separado, las pistas restantes disponen de menos espacio. Una pequeña región residual que antes parecía válida puede pasar de repente a ser demasiado corta para todos los bloques que faltan.
En ese momento puedes marcarla entera como vacía.
Una secuencia útil es:
- completa un bloque;
- coloca su separador obligatorio;
- recalcula los segmentos abiertos que quedan;
- elimina los segmentos que no puedan contener ningún bloque pendiente;
- vuelve a escanear la línea.
Eliminación de huecos y alcance de bloques son dos vistas de la misma restricción
G-030 pregunta a qué casillas puede todavía alcanzar un bloque. La eliminación de huecos pregunta si una región completa queda fuera del alcance de todos los bloques relevantes.
Si ningún bloque puede alcanzar ninguna casilla de un segmento, todo ese segmento está forzado a ser vacío.
Para una persona suele resultar más cómodo pensar por segmentos porque las X confirmadas hacen visibles sus límites de inmediato.
Método paso a paso
Cuando aparezcan varias X en una línea:
- identifica los segmentos abiertos entre ellas;
- anota qué bloques de pista siguen sin resolver;
- usa el orden de las pistas y las asignaciones ya conocidas para decidir qué bloques podrían ocupar cada segmento;
- compara la longitud de cada segmento con esas pistas compatibles;
- si ninguna cabe, marca el segmento completo como vacío;
- comprueba si las nuevas X crean deducciones más fuertes en esta línea o en las líneas cruzadas.
Errores frecuentes
Eliminar una región porque no cabe la pista más grande
Puede caber una pista menor. Debes excluir todas las pistas compatibles, no solo una.
Ignorar el orden de las pistas
Un segmento puede tener longitud suficiente para un bloque y, aun así, encontrarse en el lado equivocado respecto a los bloques que obligatoriamente van antes o después.
Tratar una casilla desconocida como separador
Solo una casilla vacía confirmada divide la línea. Las casillas desconocidas siguen disponibles para los bloques.
Rellenar automáticamente la región que sobrevive
Eliminar una región te dice dónde no puede estar un bloque. No te dice necesariamente dónde se encuentra exactamente dentro del espacio restante.
Qué aprender después
La eliminación de huecos conduce de forma natural a la segmentación de líneas. Cuando varias casillas vacías ya son seguras, resulta útil dejar de pensar en toda la fila o columna como una única línea y resolver sus segmentos abiertos como problemas más pequeños.
Preguntas frecuentes
¿La eliminación de huecos solo sirve para regiones muy pequeñas?
No. Cualquier región abierta puede eliminarse si ningún bloque pendiente puede ocuparla legalmente.
¿Un segmento puede ser demasiado pequeño para una pista pero válido para otra?
Sí. Por eso debes considerar compatibilidad y orden antes de tachar toda la región.
¿Es lo mismo que marcar casillas fuera del alcance de los bloques?
Son ideas muy relacionadas. El alcance trabaja casilla a casilla o bloque a bloque; la eliminación de huecos es la consecuencia a nivel de segmento cuando toda una región resulta inalcanzable.