#30 eres basura xDDDD
Media hora pegándome con el código por no leer bien, pensaba que si solo tenía un dígito no había que contarlo, cuando tenías que duplicarlo... yo flipando porque me decía que estaba mal el resultado xD
PD: Que susto la parte 2
Van fuertes este año... y vaya puta perrada el overlapping... si ya de por sí tenía su historia, imagínate si hay cosas que obvian en el enunciado.
Yo lo he hecho en Python, mis replaces dan sida pero son clave. Tened en cuenta que los números se pueden solapar: eighthree es 83.
#37 el solapamiento no importa si te quedas con la primera ocurrencia y luego buscas la última.
#37 en realidad aunque se solapen con tal que saques todos los matches por separados de izquierda a derecha te viene dando igual, es bastante directo de hacer
Yo la parte 2 la hice igual que la 1 pero con 9 replaces sidosos previos: line.replace("one", "one1one")
Te ahorra un poco de dolor de cabeza y queda algo más legible, pero tampoco tiene gran importancia.
Aaaah, edit, perdon, ya veo, que buena!
el solapamiento da igual si vas leyendo uno a uno
el solapamiento solo importaria si tuvieses un numero contenido en otro, me lo invento:
aa es un numero unic
baab es otro numero unico
cuando lees baab lees aa o baab? pues eso, en los numeros nuestros esto nunca ocurre...
#50 el problema del overlap era para los que hacíamos replace: "threeight" se convertía en 3ight y ya no podias leer el eight
Lo del overlapping no es un problema de programación, es un problema de enunciado. Puedes asumir tanto que una combinación de caracteres ha de ser consumida por su valor y por tanto no aplica para el resto, o puedes asumir que ambos valores han de respetarse. Yo en particular he optado por la primera aproximación al principio, hasta que tirando de debug me he dado cuenta de lo que pasaba (de ahí el #[derive(Debug)] xD)
#51 justo, en mi primera aproximación perdía esa combinación.
#58 Jajajajaja yo he pasado de empezar pensando en como hacer mi propio "find" a meter 9 replace a pelo antes de procesar la línea xD