Вирівнювання коду#5507

Вирівнювання коду

2 секунди
256 мегабайтів
Дуже легка

Ви є частиною команди, яка розробляє Неймовірно Налаштовуваний Редактор Коду — текстовий редактор з розширеними можливостями. Ваше завдання — створити модуль, що обробляє блок коду, вирівнює кожну колонку по фіксованій вертикальній позиції, при цьому код має залишатися максимально компактним. Зокрема, перше слово у кожному рядку повинно починатися з позиції p_1 = 1; друге — з мінімальної можливої позиції p_2 так, щоб усі перші слова закінчувалися не пізніше ніж у позиції p_2 - 2; третє — з мінімально можливої позиції p_3, щоб усі другі слова закінчувалися не пізніше ніж у позиції p_3 - 2; і так далі.

Кожен рядок містить одне чи більше слів, розділених пропусками. Слова складаються з літер латинського алфавіту будь-якого регістру та символів ASCII (ASCII коди від до включно). Пропуск має ASCII код .

Вхідні дані

Вхід складається з одного або більше рядків коду. Кожен рядок закінчується стандартним символом кінця рядка, включаючи останній. У кожному рядку як мінімум одне слово. Довжина кожного слова від до символів. Слова розділені одним або кількома пропусками. Жоден з рядків не перевищує символів, а усього не більше рядків.

Вихідні дані

У вихідний файл потрібно вивести відформатований, вирівняний код з тією ж кількістю рядків і такими ж словами у тому ж порядку. Не повинно бути пропусків на початку та у кінці рядків. Слова мають розділятися одним або кількома пропусками так, щоб -те слово у кожному рядку починалося з позиції p_i.

У поданому нижче прикладі символ " означає пропуск (ASCII код ).

Приклади

Приклад 1

Loading
Loading