Vedi anche: Wordagons
Sfida
Dato un esagono e un numero ncome input, emette gli stessi ntempi ruotati di esagono .
Esagono
L'esagono sarà una stringa in questo modo:
a b c
d d e e
f f o g g
h h i i
j k l
L'esagono sarà sempre regolare e conterrà sempre e solo i caratteri ASCII stampabili:
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
Rotazione
Per sapere di quanto ruotare l'esagono, moltiplicalo nper 60 gradi per ottenere l'angolo di rotazione. Ad esempio, usando l'esagono sopra, se nè 2, lo moltiplichiamo per 60 per ottenere 120 gradi. Quindi, ruotiamo l'esagono di 120 gradi:
j h f
k h f d
l i o d a
i g e b
g e c
Si noti che ogni lato ha spostato due lati in senso orario.
Se nè positivo, è necessario ruotare l'esagono in senso orario. Se nè negativo, è necessario ruotare l'esagono in senso antiorario.
n sarà sempre un numero intero compreso tra -6 e 6 inclusi.
Esempi
Ingresso:
. u .
. | .
l - + - r
. | .
. d .
n = 3
. d .
. | .
r - + - l
. | .
. u .
Ingresso:
- - -
/ \
< >
\ /
- - -
n = -1
Produzione:
- \ >
- /
- -
/ -
< \ -
Ingresso:
h e x a
g o n s a
n d t r i a
n g l e s m a
k e m e s a
d l y m a
d d e r
n = 6
Produzione:
h e x a
g o n s a
n d t r i a
n g l e s m a
k e m e s a
d l y m a
d d e r
vincente
Vince il programma più breve in byte.
transform:rotate(x). Si scopre che non era un'idea brillante, chi l'avrebbe saputo?