Мне было интересно, есть ли алгоритм разбить линию на несколько строк, чтобы результирующий набор из нескольких линий соответствовал квадратной форме, а не широкой прямоугольной форме. Позвольте мне привести несколько примеров,
Входной сигнал:
Привет, это действительно длинная очередь.
Выход:
Привет, это
действительно
длинная линия
Input:
а б в г е е
Выход:
а б в
д е ф
Входной сигнал:
Это действительно такая чертова линия. Это конец.
Выход:
Это действительно такой
looooooooooooooooooooong
линия Это конец.
Если вы видите в приведенных выше примерах, строка ввода вписывается в широкий прямоугольник. Но результат более или менее соответствует квадратной форме.
По сути, здесь нужно просто посчитать количество символов в строке и взять квадратный корень из этого числа. Затем поместите квадратное число символов в каждой строке. Но в приведенном выше примере разделение должно выполняться с учетом переносов слов вместо символов. Есть ли стандартный алгоритм для этого? Любые примеры кода / указатели будут оценены!