eolymp
bolt
Try our new interface for solving problems
Problems

Выравнивание кода

Выравнивание кода

Вы работаете в команде, которая пишет Невероятно Настраиваемый Редактор Кода, который фактически является текстовым редактором c некоторыми фичами. Вы работаете над модулем, который берет кусок кода, содержащий некоторые выражения или другую информацию, и выравнивает каждую колонку на фиксированную вертикальную позицию, но при этом результирующий код остается настолько коротким, насколько это возможно. То есть, все первые слова в каждой линии находятся на позиции \textbf{p_1 = 1}; вторые слова в каждой линии находятся на минимально возможной позиции \textbf{p_2}, так что все концы первых слов находятся на (или) перед позицией \textbf{p_2-2}; третьи слова в каждой линии находятся на минимально возможной позиции \textbf{p_3}, так что все концы вторых слов находятся на (или) перед позицией \textbf{p_3-2}, и так далее. Код состоит из нескольких линий. Каждая линия содержит одно или несколько слов разделенных пробелами. Каждое слово содержит маленькие или большие латинские буквы и символы ASCII: пунктуационные знаки, разделители и другие непробельные символы (ASCII коды с \textbf{33} до \textbf{126} включительно). Пробел имеет ASCII код \textbf{32}. \InputFile Входной файл содержит одну или несколько линий кода. Все линии (включая последнюю) заканчиваются стандартным сиволом конца строки. Каждая линия содержит по крайней мере одно слово, каждое слово имеет длину от \textbf{1} до \textbf{80} символов включительно. Слова разделены одним или несколькими пробелами. Каждая линия во входном файле не превышает \textbf{180} символов. Всего в файле не более \textbf{1000} линий. \OutputFile Выведите в выходной файл отформатированный, выравненный код, который содержит такое же число линий, с такими же словами, слова идут в том же порядке, без пробелов в начале или конце линии. Слова должны быть отделены одним или несколькими пробелами, так что \textbf{i}-ое слово в каждой линии начинается на позиции \textbf{p_i}. \includegraphics{https://static.e-olymp.com/content/65/65f257317ff28664ef3567e386eaea143e3731ea.jpg} Символ '' в примере ниже обозначает пробел (ASCII код \textbf{32}).
Time limit 2 seconds
Memory limit 256 MiB
Input example #1
  start:  integer;    // begins here
stop: integer; //  ends here  
 s:  string;   
c:   char; // temp 
Output example #1
start: integer; // begins here
stop:  integer; // ends   here
s:     string;
c:     char;    // temp
Author Roman Elizarov