3 votos

Lógica defectuosa al sumar grandes enteros?

Esto está relacionado con el Problema de Euler $13$ de http://www.ProjectEuler.net.

Calcula los primeros diez dígitos de la suma de los siguientes cien números de $50$ dígitos.

$37107287533902102798797998220837590246510135740250$

Ahora, este fue mi razonamiento:

Puedo descartar libremente los últimos cuarenta dígitos y dejar los últimos diez.

$0135740250$

Y luego simplemente sumar esos. Esto sería lo suficientemente grande como para ser almacenado en un tipo de dato de $64$ bits y mucho más fácil de calcular. Sin embargo, mi respuesta no está siendo aceptada, así que me veo obligado a cuestionar mi lógica.

Sin embargo, no veo ningún problema. Los últimos cuarenta dígitos nunca harán la diferencia porque son al menos un orden de magnitud de $10$ más grandes que los valores anteriores y, por lo tanto, nunca retroceden hacia áreas más pequeñas. ¿No es así?

19voto

Anonymous User Puntos 942

Si se suponía que debías encontrar los últimos diez dígitos, podrías simplemente ignorar los primeros 40 dígitos de cada número. Sin embargo, se supone que debes encontrar los primeros diez dígitos, por lo que eso no funciona. Y tampoco puedes simplemente ignorar los últimos dígitos de cada número porque esos pueden llevarse adelante.

8voto

Chris Marasti-Georg Puntos 17023

Primero lo estás haciendo en el extremo equivocado, segundo, la declaración en general sigue sin ser correcta.

por ejemplo:

9999999999
1000000001

Por ejemplo, si quieres los primeros 2 dígitos, obtendrás 10 si descartas los últimos 2 dígitos y haces la suma. La respuesta correcta es 11

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X