Napisz program lub funkcję, która pobiera niepusty łańcuch jednowierszowy. Ciąg będzie albo zerowy lub więcej spacji, po których nastąpi jeden kropka ( cząstka ), taki jak .lub ., lub ciąg będzie sekwencją jednego lub więcej naprzemiennych ukośników do przodu i do tyłu ( fala ), które mogą zaczynać się od jednego, takiego jak jako \lub /\/lub \/\/\/\/\/\/.
W obu przypadkach propaguj cząstkę / falę w prawo o jedną jednostkę.
W szczególności w przypadku cząstek wstaw spację przed ., przesuwając ją o jedno miejsce w prawo, a następnie wyślij powstały ciąg. Na przykład:
.→ .
.→ .
.→ .
.→ .
.→ .
.→ .
.→ .
.→ .
W przypadku fali dołącz jedną z nich /lub \odpowiednio, aby fala ciągle się naprzemiennie, a jej długość zwiększy się o jeden, a następnie wyślij wynikowy ciąg. Na przykład:
/→ /\
\→ \/
/\→ /\/
\/→ \/\
/\/→ /\/\
\/\→ \/\/
/\/\→ /\/\/
\/\/→\/\/\
W obu przypadkach dane wyjściowe mogą nie zawierać końcowych spacji, ale opcjonalny końcowy znak nowej linii jest dozwolony.
Najkrótszy kod w bajtach wygrywa.