Trójkątność to nowy esolang opracowany przez pana Xcodera, w którym struktura kodu musi być zgodna z bardzo specyficznym wzorem:
- W tym
n
wierszu kodu muszą znajdować się dokładnie2n-1
znaki programu. Powoduje to kształt trójkąta / piramidy, przy czym pierwsza linia ma tylko jeden znak, a reszta zwiększa się o 2. - Każda linia musi być uzupełniona
.
literami s po lewej i prawej stronie, tak aby znaki były wyśrodkowane na swoich liniach, a wszystkie linie były wypełnione na tej samej długości. Jeślil
jest zdefiniowany jako liczba linii w programie, każda linia w programie musi mieć długość2 * l - 1
Na przykład program po lewej stronie jest poprawny, ale program po prawej stronie nie jest:
Valid | Invalid
|
...A... | ABCDE
..BCD.. | FGH
.EFGHI. | IJKLMN
JKLMNOP | OPQRS
Po umieszczeniu w prawidłowej strukturze nazwa staje się oczywista.
Zadanie
Twoim zadaniem jest pobranie jednego ciągu wiersza jako danych wejściowych, reprezentujących kod trójkątności, i przesłanie go przekonwertowanego na prawidłowy kod, jak opisano powyżej.
Dane techniczne we / wy:
- Dane wejściowe będą zawierać tylko znaki z zakresu
0x20 - 0x7e
- Długość wejścia zawsze będzie liczbą kwadratową, a zatem będzie ładna do wypełnienia.
- Do wypełnienia wyjściowego należy użyć kropek, a nie czegoś innego.
Możesz wprowadzać i wyprowadzać dowolną akceptowalną metodą. To jest golf golfowy, więc wygrywa najkrótszy kod w bajtach !
Przypadki testowe
input
----
output
g
----
g
PcSa
----
.P.
cSa
DfJ0vCq7G
----
..D..
.fJ0.
vCq7G
7xsB8a1Oqw5fhHX0
----
...7...
..xsB..
.8a1Oq.
w5fhHX0
QNYATbkX2sKZ6IuOmofwhgaef
----
....Q....
...NYA...
..TbkX2..
.sKZ6IuO.
mofwhgaef
ABCDEF"$%& G8"F@
----
...A...
..BCD..
.EF"$%.
& G8"F@
ab.c
----
.a.
b.c
Dla tych, którzy znają Trójkątność, zauważysz z ostatniego przypadku testowego, że łańcuchy nie muszą być obsługiwane