|
|
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
(list;
graph;
refs;
listen;
history;
text;
internal format)
|
|
|
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
|
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
|
|
|
KEYWORD
|
nonn,base,easy
|
|
AUTHOR
|
|
|
STATUS
|
approved
|
|
|
|