Dezesseis pilhas de queijo são colocadas em um quadrado 4x4. Eles são rotulados de a . A menor pilha é e a maior é .
O Hungry Mouse está com tanta fome que sempre vai direto para a pilha maior (ou seja, ) e a come imediatamente.
Depois disso, ele vai para a maior pilha vizinha e rapidamente come essa também. (Sim ... Está com muita fome.) E assim por diante até não haver mais pilha vizinha.
Uma pilha pode ter até 8 vizinhos (horizontal, vertical e diagonal). Não há volta.
Exemplo
Começamos com as seguintes pilhas de queijo:
O rato faminto come primeiro e, em seguida, sua maior pilha vizinha, que é .
Seus próximos movimentos são , , , , , , , , e nesta ordem exata.
Não há mais queijo ao redor do Hungry Mouse, então ele pára por aí.
O desafio
Dada a configuração inicial do queijo, seu código deve imprimir ou retornar a soma das pilhas restantes depois que o Hungry Mouse parar de comê-las.
Para o exemplo acima, a resposta esperada é .
Regras
- Como o tamanho da matriz de entrada é fixo, você pode considerá-lo como uma matriz 2D ou uma matriz unidimensional.
- É garantido que cada valor de a apareça exatamente uma vez.
- Isso é código-golfe .
Casos de teste
[ [ 4, 3, 2, 1], [ 5, 6, 7, 8], [12, 11, 10, 9], [13, 14, 15, 16] ] --> 0
[ [ 8, 1, 9, 14], [11, 6, 5, 16], [13, 15, 2, 7], [10, 3, 12, 4] ] --> 0
[ [ 1, 2, 3, 4], [ 5, 6, 7, 8], [ 9, 10, 11, 12], [13, 14, 15, 16] ] --> 1
[ [10, 15, 14, 11], [ 9, 3, 1, 7], [13, 5, 12, 6], [ 2, 8, 4, 16] ] --> 3
[ [ 3, 7, 10, 5], [ 6, 8, 12, 13], [15, 9, 11, 4], [14, 1, 16, 2] ] --> 12
[ [ 8, 9, 3, 6], [13, 11, 7, 15], [12, 10, 16, 2], [ 4, 14, 1, 5] ] --> 34
[ [ 8, 11, 12, 9], [14, 5, 10, 16], [ 7, 3, 1, 6], [13, 4, 2, 15] ] --> 51
[ [13, 14, 1, 2], [16, 15, 3, 4], [ 5, 6, 7, 8], [ 9, 10, 11, 12] ] --> 78
[ [ 9, 10, 11, 12], [ 1, 2, 4, 13], [ 7, 8, 5, 14], [ 3, 16, 6, 15] ] --> 102
[ [ 9, 10, 11, 12], [ 1, 2, 7, 13], [ 6, 16, 4, 14], [ 3, 8, 5, 15] ] --> 103
[[9, 10, 11, 12], [1, 2, 7, 13], [6, 16, 4, 14], [3, 8, 5, 15]]