Entrada:
Uma matriz contendo números inteiros no intervalo [0 - 9] .
Desafio:
Determine se todos os elementos diferentes de zero estão conectados um ao outro verticalmente e / ou horizontalmente.
Resultado:
Um valor verdadeiro, se todos estiverem conectados, e um valor falso, se houver elementos / grupos diferentes de zero que não estão conectados a outros elementos / grupos.
Casos de teste:
Os casos de teste são separados por linha. Os casos de teste podem ser encontrados em formatos mais convenientes aqui (de Kudos para Dada ).
Todos os itens a seguir estão conectados e devem retornar um valor verdadeiro:
0
---
0 0
---
1 1 1
0 0 0
---
1 0 0
1 1 1
0 0 1
---
0 0 0 0 0 0
0 0 3 5 1 0
0 1 0 2 0 1
1 1 0 3 1 6
7 2 0 0 3 0
0 8 2 6 2 9
0 0 0 0 0 5
Todos os itens a seguir não estão conectados e devem retornar um valor falso:
0 1
1 0
---
1 1 1 0
0 0 0 2
0 0 0 5
---
0 0 5 2
1 2 0 0
5 3 2 1
5 7 3 2
---
1 2 3 0 0 5
1 5 3 0 1 1
9 0 0 4 2 1
9 9 9 0 1 4
0 1 0 1 0 0
Isso é código-golfe , então a submissão mais curta em cada idioma vence. As explicações são incentivadas!
Inspirado por este desafio .