Ti viene data una griglia esagonale dei personaggi .
e #
, in questo modo:
. . . . . . . .
. . . . # . . .
. # . . . # . .
. . . # . . . .
. . . . . # . .
. . . . . . . .
Il tuo compito è riempire ulteriormente il riquadro di delimitazione allineato agli assi #
con #
:
. . . . . . . .
. . # # # # . .
. # # # # # . .
. . # # # # # .
. . # # # # . .
. . . . . . . .
Il riquadro di delimitazione allineato all'asse è la forma esagonale convessa più piccola che contiene tutto il #
. Si noti che nel caso della griglia esagonale, ci sono tre assi da considerare (W / E, SW / NE, NW / SE):
Ecco un altro esempio per mostrare che in alcuni casi, uno o più lati conterranno solo uno #
:
. . . . . . . . . . . . . . . .
. # . . . . . . . # # # # . . .
. . . . . # . . . . # # # # . .
. . # . . . . . . . # # # . . .
. . . . . . . . . . . . . . . .
Puoi vederli come esagoni con lati degeneri, oppure puoi disegnare il riquadro di delimitazione attorno a loro, come ho fatto sopra, nel qual caso sono ancora esagoni:
Troppo difficile? Prova la parte I!
Regole
È possibile utilizzare due caratteri ASCII stampabili non spaziali distinti (da 0x21 a 0x7E, inclusi), al posto di #
e .
. Continuerò a fare riferimento a loro come #
e .
per il resto delle specifiche.
L'input e l'output possono essere una stringa separata da un singolo avanzamento riga o un elenco di stringhe (una per ogni riga), ma il formato deve essere coerente.
Si può presumere che l'input contenga almeno una #
e tutte le linee abbiano la stessa lunghezza. Nota che ci sono due diversi "tipi" di linee (che iniziano con uno spazio o un non-spazio) - si può non dare per scontato che l'ingresso inizia sempre con lo stesso tipo. Puoi presumere che il rettangolo di selezione si adatti sempre alla griglia che ti viene data.
È possibile scrivere un programma o una funzione e utilizzare uno qualsiasi dei nostri metodi standard per ricevere input e fornire output.
È possibile utilizzare qualsiasi linguaggio di programmazione , ma si noti che queste scappatoie sono vietate per impostazione predefinita.
Questo è code-golf , quindi la risposta valida più breve - misurata in byte - vince.
Casi test
Ogni test case ha input e output uno accanto all'altro.
# #
. . . .
# . # # # #
. . . .
. # . #
. . . . # .
# . # .
# . # .
. . . . # .
. # . #
# . # .
# . . # # .
. # # #
. # # #
# . . # # #
. # # #
. . # . # #
. . # #
# . . # # .
# . . # # .
. . # #
. . # . # #
. . . . . . . . . . . . . . . .
. . # . # . . . . . # # # . . .
. . . . . . . . . . . # # . . .
. . . # . . . . . . . # . . . .
. . . . . . . . . . . . . . . .
. . # . . . # . . . # # # # # .
. . . . . . . . . . . # # # # .
. . . # . . . . . . . # # # . .
. . . . . . . . . . . . . . . .
. # . . . . . . . # # # # . . .
. . . . . # . . . . # # # # . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. # . . . . . . . # # # # . . .
. . . . . # . . . . # # # # . .
. . # . . . . . . . # # # . . .
. . . . # . . . . . # # # # . .
. # . . . # . . . # # # # # . .
. . . # . . . . . . # # # # # .
. . . . . # . . . . # # # # . .