Как программист, вы, вероятно, слышали о прямом и обратном слеше. Но вы слышали о падениях? Вот когда вы берете кучу слешей, соединяете их концы и рисуете их вниз.
Для сегодняшней задачи вы должны написать программу или функцию, которая берет строку, состоящую исключительно из косых черт, и выводит все эти косые черты, нарисованные вниз, в линию, соединяющую их. Это будет намного понятнее, если вы увидите пример. Учитывая строку \\\//\/\\
, вы должны вывести:
\
\
\
/
/
\
/
\
\
Вот некоторые уточнения:
В каждой строке должен быть один слеш.
В первой строке будет 0 пробелов.
Для каждой пары слешей:
Если они отличаются друг от друга, они будут отображены в одном столбце. Например,
\/
даст:\ /
Если они такие же характер, нижний в направлении указал на, что движется вправо для обратной косой черты, а перемещение влево для прямой косой черты. Так
\\//
даст\ \ / /
Каждая строка может иметь дополнительный пробел, если это не меняет внешний вид вывода. Допускается до одного трейлинга и ведущего символа новой строки. Дополнительные пробелы не допускаются !
Чтобы сделать это проще, вы можете предположить, что строка никогда не будет содержать слишком много прямых косых черт. Другими словами, ни один префикс ввода не будет содержать больше прямых косых черт, чем обратной косой черты, поэтому такой ввод, как \\////
или //
никогда не будет дан. Это также означает, что каждый ввод будет начинаться с обратной косой черты.
Если ваш ввод воспринимается как строковый литерал, вы можете избежать обратной косой черты, если это необходимо. Вам также никогда не потребуется обрабатывать ввод, который является пустым или содержит символы, отличные от косой черты.
Вы можете выводить в любом разумном формате .
Как обычно, это задача для игры в гольф , поэтому постарайтесь найти самое короткое из возможных решений, даже если вы выбираете язык, где это довольно сложно. Бонусные баллы за объяснение любых интересных методов, которые вы использовали, чтобы снять байты!
Примеры
#Input
\\\\\\\\\\\
#Output
\
\
\
\
\
\
\
\
\
\
\
#Input
\\\//\\/\//\\///
#Output
\
\
\
/
/
\
\
/
\
/
/
\
\
/
/
/
#Input
\/\/\/
#Output
\
/
\
/
\
/