Задав строку в качестве входных данных, найдите самую длинную непрерывную подстроку, которая не имеет символов дважды или более. Если таких подстрок несколько, вы можете вывести либо. Вы можете предположить, что вход находится в диапазоне ASCII для печати, если хотите.
счет
Сначала ответы будут ранжироваться по длине их самой длинной неповторяющейся подстроки, а затем по их общей длине. Более низкие оценки будут лучше по обоим критериям. В зависимости от языка это, вероятно, будет восприниматься как вызов кода-гольфа с ограничением на источник.
тривиальность
В некоторых языках набрать 1, x (язык) или 2, x (брейк-бла и другие тьюрины) довольно легко, однако есть другие языки, в которых минимизация самой длинной неповторяющейся подстроки является проблемой. Мне было очень весело получить 2 балла в Haskell, поэтому я призываю вас искать языки, где это задание весело.
Контрольные примеры
"Good morning, Green orb!" -> "ing, Gre"
"fffffffffff" -> "f"
"oiiiiioiiii" -> "io", "oi"
"1234567890" -> "1234567890"
"11122324455" -> "324"
Сдача баллов
Вы можете оценить свои программы, используя следующий фрагмент:
11122
происходит после 324
, но дедуплицируется до 12
.
11122324455
Джонатан Аллан понял, что моя первая ревизия не справилась с этим правильно.