Você recebe uma grade hexagonal dos personagens .
e #
, assim:
. . . . . . . .
. . . . # . . .
. # . . . # . .
. . . # . . . .
. . . . . # . .
. . . . . . . .
Sua tarefa é preencher toda a caixa delimitadora alinhado ao eixo da #
com ainda mais #
:
. . . . . . . .
. . # # # # . .
. # # # # # . .
. . # # # # # .
. . # # # # . .
. . . . . . . .
A caixa delimitadora alinhada ao eixo é a menor forma hexagonal convexa que contém todas as #
. Observe que, no caso da grade hexagonal, existem três eixos a serem considerados (L / E, SW / NE, NW / SE):
Aqui está outro exemplo para mostrar que, em alguns casos, um ou mais lados conterão apenas um #
:
. . . . . . . . . . . . . . . .
. # . . . . . . . # # # # . . .
. . . . . # . . . . # # # # . .
. . # . . . . . . . # # # . . .
. . . . . . . . . . . . . . . .
Você pode visualizá-los como hexágonos com lados degenerados ou pode desenhar a caixa delimitadora ao redor deles, como eu fiz acima, caso em que ainda são hexágonos:
Demasiado difícil? Tente a Parte I!
Regras
Você pode usar quaisquer duas distintas não espaciais caracteres imprimíveis ASCII (0x21 a 0x7E, inclusive), no lugar de #
e .
. Continuarei me referindo a eles como #
e .
pelo restante da especificação.
Entrada e saída podem ser uma única sequência separada por avanço de linha ou uma lista de sequências (uma para cada linha), mas o formato precisa ser consistente.
Você pode assumir que a entrada contém pelo menos uma #
e todas as linhas têm o mesmo comprimento. Observe que existem dois "tipos" de linhas diferentes (começando com um espaço ou um não-espaço) - você pode não assumir que a entrada sempre começa com o mesmo tipo. Você pode assumir que a caixa delimitadora sempre se encaixa dentro da grade que você recebe.
Você pode escrever um programa ou função e usar qualquer um dos nossos métodos padrão de recebimento de entrada e saída.
Você pode usar qualquer linguagem de programação , mas observe que essas brechas são proibidas por padrão.
Isso é código-golfe , então a resposta mais curta e válida - medida em bytes - vence.
Casos de teste
Cada caso de teste tem entrada e saída próximos um do outro.
# #
. . . .
# . # # # #
. . . .
. # . #
. . . . # .
# . # .
# . # .
. . . . # .
. # . #
# . # .
# . . # # .
. # # #
. # # #
# . . # # #
. # # #
. . # . # #
. . # #
# . . # # .
# . . # # .
. . # #
. . # . # #
. . . . . . . . . . . . . . . .
. . # . # . . . . . # # # . . .
. . . . . . . . . . . # # . . .
. . . # . . . . . . . # . . . .
. . . . . . . . . . . . . . . .
. . # . . . # . . . # # # # # .
. . . . . . . . . . . # # # # .
. . . # . . . . . . . # # # . .
. . . . . . . . . . . . . . . .
. # . . . . . . . # # # # . . .
. . . . . # . . . . # # # # . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. # . . . . . . . # # # # . . .
. . . . . # . . . . # # # # . .
. . # . . . . . . . # # # . . .
. . . . # . . . . . # # # # . .
. # . . . # . . . # # # # # . .
. . . # . . . . . . # # # # # .
. . . . . # . . . . # # # # . .