|
|
A099009
|
|
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
|
|
|
0, 495, 6174, 549945, 631764, 63317664, 97508421, 554999445, 864197532, 6333176664, 9753086421, 9975084201, 86431976532, 555499994445, 633331766664, 975330866421, 997530864201, 999750842001, 8643319766532, 63333317666664
(list;
graph;
refs;
listen;
history;
text;
internal format)
|
|
|
OFFSET
|
1,2
|
|
COMMENTS
|
There are no seven-digit fixed points.
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
0's in n giving leading 0's in n'' is allowed.
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
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
|
|
LINKS
|
|
|
EXAMPLE
|
6174 is a fixed point of the mapping and hence a term: 6174 -> 7641 - 1467 = 6174.
|
|
MATHEMATICA
|
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 *)
|
|
PROG
|
(Python)
# (version 2.4) from Tim Peters
def extend(base, start, n):
if n == 0:
yield base
return
for i in range(start, 10):
for x in extend(base + str(i), i, n-1):
yield x
def drive(n):
result = []
for lo in extend("", 0, n):
ilo = int(lo)
if ilo == 0 and n > 1:
continue
hi = lo[::-1]
diff = str(int(hi) - ilo)
diff = "0" * (n - len(diff)) + diff
if sorted(diff) == list(lo):
result.append(diff)
return sorted(result)
for n in range(1, 17):
# print("Length", n)
# print('-' * 40)
for r in drive(n):
print(r, end=', ')
(Haskell)
a099009 n = a099009_list !! (n-1)
a099009_list = [x | x <- [0..], a151949 x == x]
(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
|
|
CROSSREFS
|
|
|
KEYWORD
|
nonn,base
|
|
AUTHOR
|
|
|
EXTENSIONS
|
|
|
STATUS
|
approved
|
|
|
|