Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

188
Visualizações
HackerRank separa el desafío de los números

Hola a todos; He estado lidiando con 3 casos que no están pasando. La diferencia es tan sutil con un cambio de dígito. Probé las notaciones de JavaScript para números muy grandes o notaciones científicas, pero fue en vano. El desafío está vinculado aquí.

Los diferentes casos de prueba están aquí.

console.log(separateNumbers("90071992547409929007199254740993")) //Da NO aunque debería dar "sí"

console.log(separateNumbers("90071992547401929007199254740193")) //Da SÍ cuando 9 se reemplaza por 1//

Mi código va como:

 function separateNumbers(s) { var beautiful = true; for (let len = 1; len < s.length; len++) { var first = s.substr(0, len); var num = s.substr(0, len); if (s.length <= len) { continue; } var sNew = ''.concat(first.toString()); while (sNew.length < s.length) { num++; sNew = sNew.concat(num.toString()); } if (sNew === s) { console.log('YES ' + first); beautiful = false; continue; } } if (beautiful) { console.log('NO') }

}

Tus ayudas son muy apreciadas. muchas gracias

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

No hay ningún problema con su algoritmo, funciona exactamente como se esperaba (y es correcto, por cierto).

El problema es con el tipo de datos JS-Number. La constante MAX_SAFE_INTEGER tiene un valor de 9007199254740991 . El razonamiento detrás de ese número es que JavaScript usa números de formato de punto flotante de doble precisión como se especifica en IEEE 754 y solo puede representar con seguridad números enteros entre -(2^53 - 1) and 2^53 - 1

En lugar de usar el tipo de número estándar, use BIGINT. Eso debería darle la respuesta correcta para el caso de prueba.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda