La serie de televisión de los 80 Knight Rider presentó un auto inteligente y consciente de sí mismo llamado KITT. Un aspecto distintivo del automóvil era una barra de escáner frontal que permitía a KITT "ver" (y que parecía sospechosamente familiar para los fanáticos de otra serie de televisión anterior ).
El escáner tenía ocho luces como se ve en esta imagen:
Las luces "se movieron" como se muestra en esta imagen animada .
Su tarea, como ya lo ha adivinado, es recrear la barra del escáner con las luces en movimiento en el arte ASCII.
El reto
Dado un entero t, genera el estado de la barra del escáner en ese instante, definido de la siguiente manera:
- El escáner consta de ocho luces.
- En cualquier instante, una de las luces está activa y se muestra como
#. Las luces que estaban activas a vecest-1yt-2ahora están atenuadas , y se muestran como+; a menos que coincidan con el activo actual. El resto de las luces están apagadas y se muestran como-. - La luz activa se mueve de izquierda a derecha, luego de derecha a izquierda.
El resultado exacto de cada uno tse detalla a continuación.
0 --> #++----- % The leftmost light is active, and it just came from the right.
% The two neighbouring lights are dimmed
1 --> +#------ % The active light has bounced to the right, and it is covering
% one of the two lights that should be dimmed. So there is only
% one dimmed light
2 --> ++#----- % The active light has moved one more step to the right, and the
% two trailing dimmed lights are visible
3 --> -++#----
7 --> -----++#
8 --> ------#+ % The active light has bounced to the left
9 --> -----#++
10 --> ----#++-
13 --> -#++----
14 --> #++----- % Same as 0
15 --> +#------ % Same as 1
Para valores negativos del tciclo simplemente se extiende:
-1 --> -#++---- % Same as 13
-2 --> --#++--- % Same as 12
Reglas adicionales
Puedes escribir un programa o función.
La salida puede contener espacios en blanco al final y una nueva línea inicial.
El código más corto en bytes gana.
