Треугольность - это новый esolang, разработанный г-ном Xcoder, где структура кода должна следовать очень специфической схеме:
- Для этой
n
строки кода в ней должны быть ровно2n-1
символы программы. Это приводит к форме треугольника / пирамиды, причем первая строка имеет только один символ, а остальные увеличиваются с шагом 2. - Каждая строка должна быть дополнена
.
s слева и справа так, чтобы символы центрировались на их линиях, а все строки - одинаковой длины. Еслиl
определяется как количество строк в программе, каждая строка в программе должна иметь длину2 * l - 1
Например, программа слева действительна, но программа справа не является:
Valid | Invalid
|
...A... | ABCDE
..BCD.. | FGH
.EFGHI. | IJKLMN
JKLMNOP | OPQRS
Когда выложены в действующей структуре, имя становится очевидным.
задача
Ваша задача - взять в качестве входных данных однострочную строку, представляющую код треугольности, и вывести ее, преобразованную в действительный код, как описано выше.
Спецификации для ввода / вывода:
- Ввод будет содержать только символы в диапазоне
0x20 - 0x7e
- Длина ввода всегда будет квадратным числом и, таким образом, будет дополняться.
- Вы должны использовать точки для заполнения вывода, а не что-то еще.
Вы можете вводить и выводить любым приемлемым способом. Это код-гольф, поэтому выигрывает самый короткий код в байтах !
Контрольные примеры
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
Для тех, кто знает треугольность, вы заметите из последнего теста, что строки не должны быть обработаны