Трикутність - це новий езоланг, розроблений містером 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
Для тих, хто знає трикутність, ви помітите з останнього тестового випадку, що рядки не потрібно обробляти