Este desafío se trata de escribir código para resolver el siguiente problema.
Dadas dos cadenas A y B, su código debería generar los índices de inicio y finalización de una subcadena de A con las siguientes propiedades.
- La subcadena de A también debe coincidir con alguna subcadena de B con hasta una sustitución de un solo carácter en la cadena.
- Ya no debería haber una subcadena de A que satisfaga la primera propiedad.
Por ejemplo:
A = xxxappleyyyyyyy
B = zapllezzz
La subcadena apple
con índices 4 8
(indexación desde 1) sería una salida válida.
Puntuación
El puntaje de su respuesta será la suma de la longitud de su código en bytes + el tiempo en segundos que le toma a mi computadora cuando se ejecuta en las cadenas A y B de 1 millón de longitud cada una.
Prueba y entrada
Ejecutaré su código en dos cadenas de longitud 1 millón tomadas de las cadenas en http://hgdownload.cse.ucsc.edu/goldenPath/hg38/chromosomes/
La entrada estará en entrada estándar y será simplemente dos cadenas, separadas por una nueva línea.
Idiomas y bibliotecas
Puede usar cualquier idioma que tenga un compilador / intérprete / etc. para Linux y cualquier biblioteca que también sea de código abierto y esté disponible gratuitamente para Linux.
Mi máquina Los tiempos se ejecutarán en mi máquina. Esta es una instalación estándar de ubuntu en un procesador AMD FX-8350 de ocho núcleos. Esto también significa que necesito poder ejecutar su código. Como consecuencia, solo use software gratuito fácilmente disponible e incluya instrucciones completas sobre cómo compilar y ejecutar su código.
if(hash(str1 == test1 && str2 == test2)) print("100,150") else ..
- pensamientos?