Take the 2-minute tour ×
Mathematics Stack Exchange is a question and answer site for people studying math at any level and professionals in related fields. It's 100% free, no registration required.

This is in relation to the Euler Problem $13$ from http://www.ProjectEuler.net.

Work out the first ten digits of the sum of the following one-hundred $50$-digit numbers.

$37107287533902102798797998220837590246510135740250$

Now, this was my thinking:

I can freely discard the last fourty digits and leave the last ten.

$0135740250$

And then simply sum those. This would be large enough to be stored in a $64$-bit data-type and a lot easier to compute. However, my answer isn't being accepted, so I'm forced to question my logic.

However, I don't see a problem. The last fourty digits will never make a difference because they are at least a magnitude of $10$ larger than the preceding values and therefore never carry backwards into smaller areas. Is this not correct?

share|improve this question
8  
I think you're counting from the wrong end... –  Scott Morrison Jul 20 '10 at 20:33
    
This problem is actually small enough to use a BigNum implementation, like BigInteger in .NET 4.0. –  John Gietzen Jul 20 '10 at 20:33
    
@Morrison: What do you mean? The smallest numbers always start at the right? @Gietzen: I think I'll try that with my next approach, thanks for the idea. –  IAE Jul 20 '10 at 20:37
    
"First" is ambiguous. Ten leftmost or ten rightmost? I believe the people at Project Euler want the former. –  badp Jul 20 '10 at 21:05
    
They are asking for first ten digits so you need to calculate the whole answer and then show the first 10 digits as answer –  Himadri Jul 22 '10 at 5:06

2 Answers 2

up vote 7 down vote accepted

If you were supposed to find the last ten digits, you could just ignore the first 40 digits of each number. However you're supposed to find the first ten digits, so that doesn't work. And you can't just ignore the last digits of each number either because those can carry over.

share|improve this answer

First you are doing it in the wrong end, second, the statement in general is still not correct.

for example:

9999999999
1000000001

Say if you want the first 2 digits, you will get 10 if you discard the last 2 digit and do the sum. The right answer is 11

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.