Estoy resolviendo problemas en hackerrank. Resolví algunos problemas difíciles, pero no acepté debido a TLE.
En Java, BufferReader ayuda contra TLE.
¿Hay alguna forma en Javascript para prevenir TLE? Cambié mi algoritmo varias veces... pero no funcionó. Problema:
Para dos cadenas A y B, definimos la similitud de las cadenas como la longitud del prefijo más largo común a ambas cadenas. Por ejemplo, la similitud de las cadenas "abc" y "abd" es 2, mientras que la similitud de las cadenas "aaa" y "aaab" es 3. Calcula la suma de similitudes de una cadena S con cada uno de sus sufijos.
Mi código:
function stringSimilarity(s) { // Write your code here let myinput = s.split("\n") myinput.forEach((elem) => { prefcount(elem) }) function prefcount(word) { let array = [] let x for(let i = 0; i < word.length; i++) { x = word.substring(i) array.push(x) } for(let arr = 0; arr < array.length;){ let res = 0 for(let string = 0; string < array[arr].length;) { if(array[arr][string] == word[string]) { res++ string++ arr++ } else if(array[arr][string] != word[string]){ arr++ } } array[arr] = res } console.log(array) } }