Tome una bandera, como esta:
-----------------------------
| | |
| | |
|=============+=============|
| | |
| | |
-----------------------------
Y una entrada numérica: la "longitud de onda"
Digamos que la longitud de la onda fue 5. Luego, cada 5 caracteres a lo largo de la línea desde el principio, reemplace el siguiente carácter a -
con \
y desplace todos los caracteres una fila hacia abajo. Repita esto hasta el final. Terminas con:
-----\
| -----\
| -----\
|===== | -----\
| ====== | -----
| ==+=== |
-----\ | ====== |
-----\ | ====|
-----\ |
-----\ |
-----
Si al final no puede hacer una onda completa al final, la bandera está terminada. Solo permanece plano hasta el final.
Puede suponer que todas las líneas tienen la misma longitud y que las líneas superior e inferior están compuestas completamente por -
(0x2D) y que el resto de los caracteres están en !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
, o es un espacio ( ). (Entonces su valor ascii es
x
, donde 31 < x < 127
)
La bandera tendrá al menos 3 de alto y 3 de ancho.
La longitud de onda será un número entero no negativo (> = 0).
(También puede hacer que la longitud de onda 1 sea la longitud de onda más pequeña, por lo que el ejemplo anterior tendría una longitud de onda 6. Esto está bien).
Su E / S de bandera puede ser como matrices de líneas o una cadena con varias líneas.
El indicador de salida puede tener espacios finales, pero solo puede tener espacios iniciales siempre que sea el mismo en cada indicador. El espacio final en un indicador de entrada se puede eliminar.
Tanteo
Este es el código de golf, por lo que la solución más corta, en bytes, gana.
Casos de prueba
---
abc
---
2
--\
abc
--\
-----
| + |
-----
10
-----
| + |
-----
---------------------------------------
|&&&&&& &&&&&&|
|&&&&&& &&&&&&|
|&&&&&& &&&&&&|
|&&&&&& .\^/. &&&&&&|
|&&&&&& . | | . &&&&&&|
|&&&&&& |\| |/| &&&&&&|
|&&&&&& .--' '--. &&&&&&|
|&&&&&& \ / &&&&&&|
|&&&&&& > < &&&&&&|
|&&&&&& '~|/~~|~~\|~' &&&&&&|
|&&&&&& | &&&&&&|
|&&&&&& &&&&&&|
|&&&&&& &&&&&&|
---------------------------------------
12
------------\
|&&&&&& ------------\
|&&&&&& ------------\
|&&&&&& &&&&&&|
|&&&&&& &&&&&&|
|&&&&&& .\^/. &&&&&&|
|&&&&&& . | | . &&&&&&|
|&&&&&& . |\| |/| &&&&&&|
|&&&&&& --' '-- &&&&&&|
|&&&&&& \ /. &&&&&&|
|&&&&&& > < &&&&&&|
|&&&&&& '~|/~~|~~\|~' &&&&&&|
|&&&&&& | &&&&&&|
|&&&&&& &&&&&&|
------------\ &&&&&&|
------------\ &&&&&&|
------------\
-----------------------
|-._`-._ :| |: _.-'_.-|
| `-._`:| |:`_.-' |
|-------`-' '-'-------|
|------_.-. .-._------|
| _.-'_.:| |:._`-._ |
|-'_.-' :| |: `-._`-|
-----------------------
4
----\
|-._`----\
| `-._ :----\
|-----._`:| |: ----\
|-------`-| |:`_.-'_---
| _.--_.-' '-'_.-' .-|
|-'_.-'_.:. .-.----- |
----\-' :| |:._------|
----\| |: _`-._--|
----\ `-._ |
----\`-|
---
---------------
---------------
---------------
---------------
---------------
5
-----\
-----------\
---------------
---------------
-----\---------
-----\---
---
-------------------------------------------
|* * * * * |##########################|
| * * * * *| |
|* * * * * |##########################|
| * * * * *| |
|* * * * * |##########################|
| * * * * *| |
|* * * * * |##########################|
|--------------- |
|#########################################|
| |
|#########################################|
| |
|#########################################|
-------------------------------------------
0
\
|\
|*\
| \
|** \
| *\
|** \
| ** \
|** *\
|- ** \
|#- ** \
| #-** *\
|# #- ** \
| # #- ** \
\# # #-** *\
\# # #- ** \
\# # #- **|\
\# # #-** |#\
\# # #- **| #\
\# # #- |# #\
\# # #-**| # #\
\# # #- |# # #\
\# # #-| # # #\
\# # #-# # # #\
\# # # # # # #\
\# # # # # # #\
\# # # # # # #\
\# # # # # # #\
\# # # # # # #\
\# # # # # # #\
\# # # # # # #\
\# # # # # # #\
\# # # # # # #\
\# # # # # # #\
\# # # # # # #\
\# # # # # # #\
\# # # # # # #\
\# # # # # # #\
\# # # # # # #\
\# # # # # # #\
\# # # # # # #\
\# # # # # # #\
\# # # # # # #\
\# # # # # # |
\# # # # # #|
\# # # # # |
\# # # # #|
\# # # # |
\# # # #|
\# # # |
\# # #|
\# # |
\# #|
\# |
\#|
\|
\