[go: up one dir, main page]

login
A282473
Multiples of 9 which cannot be expressed as the difference between a natural number k and its digit sum s(k).
1
90, 189, 288, 387, 486, 585, 684, 783, 882, 981, 990, 1089, 1188, 1287, 1386, 1485, 1584, 1683, 1782, 1881, 1980, 1989, 2088, 2187, 2286, 2385, 2484, 2583, 2682, 2781, 2880, 2979, 2988, 3087, 3186, 3285, 3384, 3483, 3582, 3681, 3780, 3879, 3978, 3987, 4086, 4185, 4284, 4383, 4482, 4581, 4680, 4779, 4878, 4977, 4986
OFFSET
1,1
COMMENTS
Based on empirical observations, it can be noted that the difference between consecutive terms is usually 99. However, this breaks down when the hundreds digit is 9, in which case the difference between consecutive terms is 9. This changes back, however.
LINKS
Charles R Greathouse IV, Table of n, a(n) for n = 1..10000
Australian Mathematics Olympiad, Question 2, 2015, p. 84.
EXAMPLE
If k=90, then k-s(k)=81. If k=100, then k-s(k)=99. This is an increasing function, so k-s(k)=90 is unachievable.
MATHEMATICA
okQ[n_] := Catch[ Do[ If[ x- Total@ IntegerDigits@ x == n, Throw@ False], {x, n, n+ 9 IntegerLength[n]}]; True]; Select[9 Range[1000], okQ[#] &] (* Giovanni Resta, Feb 27 2017 *)
PROG
(Python)
from math import ceil
def a(n): #Outputs all numbers less than n which are in the sequence
def s(n):
r = 0
while n:
r, n = r + n% 10, n//10
return r
mult9=[]
if n%9==0:
for x in range(1, ceil(n/9)+1):
mult9.append(9*x)
else:
for x in range(1, ceil(n/9)):
mult9.append(9*x)
for y in range(1, ceil(n/10)+1):
mult9.remove(10*y-s(10*y))
return mult9
(PARI) is(n)=for(k=n, n+9*#Str(n)+9, if(k-sumdigits(k)==n, return(0))); n%9==0 \\ Charles R Greathouse IV, Feb 27 2017
CROSSREFS
Sequence in context: A119896 A179697 A211442 * A044422 A044803 A235081
KEYWORD
nonn,base,easy
AUTHOR
Sharvil Kesarwani, Feb 16 2017
STATUS
approved