Considere un mapa de bits MxN donde las celdas son 0 o 1. '1' significa llenado y '0' significa vacío.Cuente el número de "agujeros" en un mapa de bits
Encuentra el número de 'agujeros' en el mapa de bits, donde un agujero es una región contigua de celdas vacías.
Por ejemplo, esto tiene dos agujeros:
11111
10101
10101
11111
... y esto tiene una sola:
11111
10001
10101
11111
¿Cuál es la manera más rápida, cuando M y N son a la vez entre 1 y 8?
Aclaración: diagonales no se consideran contiguas, sólo importa lado de adyacencia.
Nota: Estoy buscando algo que toma ventaja del formato de datos. Sé cómo transformar esto en un gráfico y [BD] FS, pero eso parece excesivo.
¿Por qué huele a tarea o golf de código? @Florin, gracias por la actualización. Por favor, considere esta observación "rescindida". Tomaremos tu palabra. – jcolebrand
¡SABE como la tarea! – Luiscencio
No es tarea, pero no importa. Estoy tratando de resolver un problema mayor y esto es solo un subproblema. – florin