Dada uma grade retangular de texto, alinhe as diagonais que vão da parte superior esquerda para a parte inferior direita em colunas, de modo que os caracteres mais baixos à direita de todas as diagonais estejam no mesmo nível. Use espaços para recuo.
Por exemplo, se a grade de entrada de texto for
abcd
1234
WXYZ
então você alinhar as diagonais W
, 1X
, a2Y
, b3z
, c4
, e d
em colunas dando essa saída:
ab
123c
WXYZ4d
Observe que os caracteres mais baixos à direita de todas as diagonais WXYZ4d
, estão no mesmo nível.
Detalhes
A grade de entrada do texto terá tamanho mínimo de 1 × 1 e todas as linhas terão o mesmo comprimento.
Você pode considerar a grade de entrada como uma cadeia de linhas múltiplas ou como uma lista de cadeias de linhas únicas.
A grade de entrada contém apenas caracteres ASCII imprimíveis (inclui espaço).
Opcionalmente, a saída pode ter uma nova linha à direita, mas não deve haver outras linhas vazias.
As linhas da saída podem opcionalmente ter espaços à direita, mas não devem ter espaços à esquerda desnecessários.
Outros exemplos
Linhas vazias separam exemplos. Cada entrada é diretamente seguida por sua saída.
123
456
789
1
452
78963
123.?!
456??!
789!!!
123.
456???
789!!!!!
**@
@
**
@ @
/\/\
\/ /
/ /\
\/\/
/
\/\
/ / /
\/\/\/\
12
34
56
78
90
7531
908642
Code
Code
G
O
L
F
FLOG
~
~
Pontuação
O código mais curto em bytes vence.