Sfida
Creare una funzione o un programma che, quando viene assegnato un numero intero size, procede come segue:
Se sizeè uguale a 1, output
H H
HHH
H H
Se sizeè maggiore di 1, output
X X
XXX
X X
dove Xè l'output del programma / funzione persize - 1
(Se preferisci, potresti avere il caso base corrispondente 0, purché specifichi nella tua risposta)
Uno dei seguenti formati di output è accettabile, a seconda di quale sia più conveniente per te:
Una stringa della struttura richiesta con due caratteri distinti corrispondenti a
HespaceUn array bidimensionale con la struttura richiesta, con due valori distinti corrispondenti a
HespaceUn array / elenco di stringhe, con una riga dell'output in ciascuna stringa, con due valori distinti corrispondenti a
Hespace
Gli spazi iniziali sono consentiti, purché vi sia una quantità costante di spazi iniziali su ciascuna linea. I due caratteri di output distinti possono dipendere da qualsiasi cosa tu scelga, purché diversi.
Specifica quale formato di output restituisce il tuo codice.
Casi test
1
H H
HHH
H H
2
H H H H
HHH HHH
H H H H
H HH HH H
HHHHHHHHH
H HH HH H
H H H H
HHH HHH
H H H H
3
H H H H H H H H
HHH HHH HHH HHH
H H H H H H H H
H HH HH H H HH HH H
HHHHHHHHH HHHHHHHHH
H HH HH H H HH HH H
H H H H H H H H
HHH HHH HHH HHH
H H H H H H H H
H H H HH H H HH H H H
HHH HHHHHH HHHHHH HHH
H H H HH H H HH H H H
H HH HH HH HH HH HH HH HH H
HHHHHHHHHHHHHHHHHHHHHHHHHHH
H HH HH HH HH HH HH HH HH H
H H H HH H H HH H H H
HHH HHHHHH HHHHHH HHH
H H H HH H H HH H H H
H H H H H H H H
HHH HHH HHH HHH
H H H H H H H H
H HH HH H H HH HH H
HHHHHHHHH HHHHHHHHH
H HH HH H H HH HH H
H H H H H H H H
HHH HHH HHH HHH
H H H H H H H H
Questo è code-golf , quindi vince il conteggio di byte più basso per ogni lingua!
![Nest [ArrayFlatten @ {r = {#, 0, #}, {#, #, #}, r} &, 1, #] e [3] // MatrixForm](https://i.stack.imgur.com/Sg0GI.jpg)
![Nest [ArrayFlatten @ {r = {#, 0, #}, {#, #, #}, r} &, 1, #] e [5] // Immagine](https://i.stack.imgur.com/KMZDi.jpg)