Dada una cadena como entrada, encuentre la subcadena contigua más larga que no tenga ningún carácter dos veces o más. Si hay varias de estas subcadenas, también puede generarlas. Puede suponer que la entrada está en el rango ASCII imprimible si lo desea.
Tanteo
Las respuestas se clasificarán primero por la longitud de su propia subcadena no repetida más larga, y luego por su longitud total. Los puntajes más bajos serán mejores para ambos criterios. Dependiendo del idioma, esto probablemente se sentirá como un desafío de código de golf con una restricción de fuente.
Trivialidad
En algunos idiomas, lograr un puntaje de 1, x (lenguaje) o 2, x (Brain-flak y otras lonas de turing) es bastante fácil, sin embargo, hay otros idiomas en los que minimizar el subsuelo más largo que no se repite es un desafío. Me divertí mucho obteniendo un puntaje de 2 en Haskell, así que te animo a buscar idiomas donde esta tarea sea divertida.
Casos de prueba
"Good morning, Green orb!" -> "ing, Gre"
"fffffffffff" -> "f"
"oiiiiioiiii" -> "io", "oi"
"1234567890" -> "1234567890"
"11122324455" -> "324"
Presentación de puntaje
Puede calificar sus programas con el siguiente fragmento:
11122
ocurre después 324
, pero se deduplica a 12
.
11122324455
Jonathan Allan se dio cuenta de que mi primera revisión no lo manejó correctamente.