Создайте программу или функцию, которая принимает список строк в качестве входных данных и выводит самую длинную строку, которая является подстрокой всех входных строк. Если имеется несколько подстрок одинаковой длины и больше нет подстроки, выведите любую из них.
- Это может означать вывод пустой строки.
- Если имеется несколько допустимых выходов, вы можете вывести любой из них. Вы не обязаны давать согласованный вывод для данного ввода, если вывод всегда действителен.
- На входе всегда будет хотя бы одна строка, но может не быть непустой строки.
- Все печатные символы ASCII могут появляться на входе. Вы можете предположить, что это единственные символы, которые появляются.
- Вы можете получить ввод или произвести вывод любым из методов по умолчанию .
- Стандартные лазейки не допускаются.
- Это код-гольф - чем меньше байтов кода, тем лучше.
Тестовые случаи:
[Inputs] -> [Valid outputs (choose one)]
["hello", "'ello"] -> ["ello"]
["very", "much", "different"] -> [""]
["empty", "", "STRING"] -> [""]
["identical", "identical"] -> ["identical"]
["string", "stRIng"] -> ["st", "ng"]
["this one", "is a substring of this one"] -> ["this one"]
["just one"] -> ["just one"]
["", "", ""] -> [""]
["many outputs", "stuptuo ynam"] -> ["m", "a", "n", "y", " ", "o", "u", "t", "p", "s"]
["many inputs", "any inputs", "ny iii", "yanny"] -> ["ny"]
["%%not&", "ju&#st", "[&]alpha_numeric"] -> ["&"]
undefined
означает, что нет допустимой выходной строки. Если пустая строка (или любая другая строка) является допустимым выводом, утверждение о том, что допустимого вывода нет, неверно.