Если введены две строки с последовательностями символов подчеркивания, представляющими соответствующие слова, выведите предложения с заполненными пробелами.
Лучший способ описать эту проблему - это на примере. Вот пример ввода:
programming _____________ and code golf
programming puzzles ______ code ____
И вот соответствующий вывод:
programming ___puzzles___ and code golf
programming puzzles _and__ code golf
Для целей этой задачи «слово» определяется как последовательность из одной или нескольких строчных букв, а «пробел» определяется как одно или несколько подчеркиваний (ввод всегда будет содержать только строчные буквы, пробелы и подчеркивания) , Слова и пробелы во входных строках разделены пробелами, а сумма количества слов и пробелов в предложениях всегда будет равна.
Задача состоит в том, чтобы заполнить все пробелы правильными словами , которые являются словами, которые занимают тот же индекс в другой строке при разбиении на пробелы.
Слово должно быть в центре пробела, как показано со словом «головоломки» в приведенном выше примере - с обеих сторон остается одинаковое количество подчеркиваний.
Если слово не может быть точно отцентрировано, дополнительное подчеркивание может идти как слева, так и справа (например, слово «и» в приведенном выше примере).
Для соответствия слову всегда будет достаточно подчеркивания, но может быть ровно столько, сколько длина слова (например, слово «гольф» в приведенном выше примере).
Никогда не будет пробела в одной и той же позиции в обеих строках.
Ввод / вывод может быть любым из следующих (ввод / вывод не обязательно должен быть одним и тем же способом):
одиночная строка, разделенная любым символом, который не является буквенным, пробелом или подчеркиванием (например, строка новой строки или запятая)
массив / список / и т. д. из двух струн
два аргумента функции / командной строки (только для ввода)
Поскольку это код-гольф , победит самый короткий код в байтах.
Приведенный выше пример можно использовать в качестве тестового примера. Вот более крупный тестовый пример (вторая строка в выводе может немного отличаться из-за разного поведения центрирования):
lorem _____ dolor _____ amet _______________ adipiscing elit mauris dapibus tincidunt _____________________________ accumsan fringilla proin vulputate viverra lorem fermentum dictum
lorem ipsum ______ sit _______ consectetur _______________ elit mauris dapibus tincidunt metus accumsan fringilla proin vulputate viverra lorem ____________________________ dictum
lorem ipsum dolor _sit_ amet __consectetur__ adipiscing elit mauris dapibus tincidunt ____________metus____________ accumsan fringilla proin vulputate viverra lorem fermentum dictum
lorem ipsum dolor_ sit _amet__ consectetur __adipiscing___ elit mauris dapibus tincidunt metus accumsan fringilla proin vulputate viverra lorem _________fermentum__________ dictum