A282473 Multiples of 9 which cannot be expressed as the difference between a natural number k and its digit sum s(k).
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
Examples
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.
Links
- Charles R Greathouse IV, Table of n, a(n) for n = 1..10000
- Brilliant.org, Those are some nifty numbers
- Australian Mathematics Olympiad, Question 2, 2015, p. 84.
Programs
-
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 *)
-
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
-
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
Comments