All about flooble | fun stuff | Get a free chatterbox | Free JavaScript | Avatars    
perplexus dot info

Home > Just Math
Sum Squares = 2009 Subtraction (Posted on 2010-05-09) Difficulty: 2 of 5
Determine all possible value(s) of a positive integer n, such that the sum of the squares of the digits of n is equal to |n - 2009|.

Note: |x| denotes the absolute value of x.

No Solution Yet Submitted by K Sengupta    
No Rating

Comments: ( Back to comment list | You must be logged in to post comments.)
Solution computer solution -- and computer language speeds | Comment 1 of 3

tm = TIMER
FOR n = 1 TO 1000000
 s$ = STR$(n)
 t = 0
 FOR i = 1 TO LEN(s$)
   v = VAL(MID$(s$, i, 1))
   t = t + v * v
 IF t = ABS(n - 2009) THEN PRINT n




The first two numbers, 1880 and 2054 are the only two solutions. The 12.46875 is how many seconds it took to go through the values of n through 1,000,000. A million is certainly sufficient as even the sum of the squares of the digits 999999 is only 486--nowhere near 999999-2009--and the n-2009 multiplies tenfold with every increase by 81 of the largest total possible for the squares of the digits for a given number of digits.

The following UBASIC program does the same as the above QB program, but does it faster, so QB isn't so quick.

    5   Tm=time1000
   10   for N=1 to 1000000
   20   S=str(N)
   30   T=0
   40   for I=1 to len(S)
   50    V=val(mid(S,I,1))
   60    T=T+V*V
   70   next
   80   if T=abs(N-2009) then print N
   90   next
  100   print:print time1000-Tm



The time taken, 2981, is shown in milliseconds, and so is less than 3 seconds.

  Posted by Charlie on 2010-05-09 14:16:40
Please log in:
Remember me:
Sign up! | Forgot password

Search body:
Forums (0)
Newest Problems
Random Problem
FAQ | About This Site
Site Statistics
New Comments (5)
Unsolved Problems
Top Rated Problems
This month's top
Most Commented On

Copyright © 2002 - 2018 by Animus Pactum Consulting. All rights reserved. Privacy Information