login
Fixed points of the Kaprekar mapping f(n) = n' - n'', where in n' the digits of n are arranged in descending, in n'' in ascending order.
42

%I #92 Sep 08 2022 08:45:15

%S 0,495,6174,549945,631764,63317664,97508421,554999445,864197532,

%T 6333176664,9753086421,9975084201,86431976532,555499994445,

%U 633331766664,975330866421,997530864201,999750842001,8643319766532,63333317666664

%N Fixed points of the Kaprekar mapping f(n) = n' - n'', where in n' the digits of n are arranged in descending, in n'' in ascending order.

%C There are no seven-digit fixed points.

%C Let d(n) denote n repetitions of the digit d. The sequence includes the following for all n>=0: 5(n)499(n)4(n)5, 63(n)176(n)4, 8643(n)1976(n)532. - _Jens Kruse Andersen_, Oct 04 2004

%C 0's in n giving leading 0's in n'' is allowed.

%C For every natural number n let n' and n" be the numbers obtained by arranging the digits of n into decreasing and increasing order, and let f(n)=n'-n". It is known that the number 6174 is invariant under this transformation and that applying f a certain number of times to a number n with four digits the numbers 0, 495 or 6174 are always reached. - _Vincenzo Librandi_, Nov 17 2010

%C Each term of A055162(n) corresponds to A099009(n+1), with its digits being reordered in the ascending manner. - _Alexander R. Povolotsky_, Apr 27 2012

%C All terms of this sequence are divisible by nine, a(n)/9 = A132155(n). - _Alexander R. Povolotsky_, Apr 29 2012

%C A055160 differs from this sequence only at the positions of two terms in it: 554999445 and 555499994445. - _Alexander R. Povolotsky_, May 01 2012

%C The union of the sequences A214555, A214556, A214557, A214558, A214559 and the element 0 gives the sequence A099009. - _Syed Iddi Hasan_, Jul 24 2012

%C The comment made by Jens Kruse Andersen is missing one more family of terms (which starts with one or more digits "9" and ends with the digit "1"): 97508421, 9753086421, 9975084201, 975330866421, 997530864201, 999750842001, ... This family could be generalized (using the same method as in Andersen's comment) and it is actually covered by _Syed Iddi Hasan_ in A214559. Also A214557 and A214558 (both - by _Syed Iddi Hasan_) are variants of Andersen's 8643(n)1976(n)532. - _Alexander R. Povolotsky_, Mar 14 2015

%C Fixed points of A151949. - _Reinhard Zumkeller_, Mar 23 2015

%H Syed Iddi Hasan, <a href="/A099009/b099009.txt">Table of n, a(n) for n = 1..8924</a>

%H Mauro Fiorentini, <a href="http://www.bitman.name/math/article/654">Kaprekar (costante di)</a> (in Italian)

%H Manuj Mishra, <a href="/A099009/a099009_1.pdf">Illustration of first 8923 terms, with each digit in a different color</a>

%H Manuj Mishra, <a href="/A099009/a099009_2.pdf">Illustration as above but only including terms of even length</a>

%H Manuj Mishra, <a href="/A099009/a099009_3.pdf">Illustration as above but only including terms of odd length</a>

%H Joseph Myers, <a href="/A099009/a099009.txt">List of cycles under Kaprekar map</a> (all numbers with <= 60 digits; cycles are represented by their smallest value)

%H Conrad Roche, <a href="http://kaprekar.sourceforge.net">Kaprekar Series Generator</a>.

%H Eric Weisstein's World of Mathematics, <a href="http://mathworld.wolfram.com/KaprekarRoutine.html">Kaprekar Routine</a>

%H <a href="/index/K#Kaprekar_map">Index entries for the Kaprekar map</a>

%e 6174 is a fixed point of the mapping and hence a term: 6174 -> 7641 - 1467 = 6174.

%t f[n_] := Block[{d = IntegerDigits@ n, a, b}, a = FromDigits@ Sort@ d; b = FromDigits@ Reverse@ Sort@ d; n == b - a]; Select[Range@ 1000000, f] (* _Michael De Vlieger_, Mar 20 2015 *)

%o (Python)

%o # (version 2.4) from Tim Peters

%o def extend(base, start, n):

%o if n == 0:

%o yield base

%o return

%o for i in range(start, 10):

%o for x in extend(base + str(i), i, n-1):

%o yield x

%o def drive(n):

%o result = []

%o for lo in extend("", 0, n):

%o ilo = int(lo)

%o if ilo == 0 and n > 1:

%o continue

%o hi = lo[::-1]

%o diff = str(int(hi) - ilo)

%o diff = "0" * (n - len(diff)) + diff

%o if sorted(diff) == list(lo):

%o result.append(diff)

%o return sorted(result)

%o for n in range(1, 17):

%o # print("Length", n)

%o # print('-' * 40)

%o for r in drive(n):

%o print(r, end=', ')

%o (Haskell)

%o a099009 n = a099009_list !! (n-1)

%o a099009_list = [x | x <- [0..], a151949 x == x]

%o -- _Reinhard Zumkeller_, Mar 23 2015

%o (Magma) a:=func<n|Seqint(Sort(Intseq(n)))-Seqint(Reverse(Sort(Intseq(n)))) eq n>; [k:k in [0..10^7]|a(k)]; // _Marius A. Burtea_, Sep 12 2019

%Y Cf. A090429, A069746, A099010, A151959, A055162, A132155, A055160, A214557, A214558, A214559

%Y In other bases: A163205 (base 2), A164997 (base 3), A165016 (base 4), A165036 (base 5), A165055 (base 6), A165075 (base 7), A165094 (base 8), A165114 (base 9).

%Y Cf. A151949, A004185, A004186.

%K nonn,base

%O 1,2

%A _Klaus Brockhaus_, Sep 22 2004

%E More terms from _Jens Kruse Andersen_ and Tim Peters (tim(AT)python.org), Oct 04 2004

%E Corrected by _Jens Kruse Andersen_, Oct 25 2004