При наличии списка строк замените каждую строку одной из ее непустых подстрок, которая не является подстрокой ни одной из других строк в списке, и настолько короткой, насколько это возможно.
пример
Учитывая список ["hello","hallo","hola"], "hello"должен быть заменен так же, "e"как эта подстрока не содержится в "hallo"и "hola"и это как можно короче. "hallo"может быть заменен либо "ha"или "al"и "hola"любой из "ho", "ol"или "la".
правила
- Вы можете предположить, что строки будут непустыми и содержат только алфавитные символы одного и того же регистра.
- Можно предположить, что такая подстрока существует для каждой строки в списке, т.е. ни одна строка в списке не будет подстрокой любой из других строк.
- Ввод и вывод могут быть в любом разумном формате.
- Это код-гольф , поэтому старайтесь использовать как можно меньше байтов на выбранном вами языке.
Тестовые случаи
В большинстве случаев дается только один возможный вывод.
["ppcg"] -> ["p"] (or ["c"] or ["g"])
["hello","hallo","hola"] -> ["e","ha","ho"]
["abc","bca","bac"] -> ["ab","ca","ba"]
["abc","abd","dbc"] -> ["abc","bd","db"]
["lorem","ipsum","dolor","sit","amet"] -> ["re","p","d","si","a"]
["abc","acb","bac","bca","cab","cba"] -> ["abc","acb","bac","bca","cab","cba"]
Связанный: Кратчайшая Идентифицирующая Подстрока - похожая идея, но более сложные правила и громоздкий формат.
""(пустая строка) однозначно идентифицирует для одного"ppcg"случая?