OFFSET
1,2
COMMENTS
Whenever 16|a(n) (n = 22, 26, 33, 41, 43, 47, 49, 51, 53, 61, 116, 149, 157, 196, 198, 204, 206, 243, 247), then a(n+1) = a(n) + 1. Zero also satisfies the definition (n = Sum_{i=1..k} d[i]^k where d[1..k] are the base-16 digits of n), but this sequence only considers positive terms. - M. F. Hasler, Nov 22 2019
LINKS
Joseph Myers, Table of n, a(n) for n=1..293 (the full list of terms, from Winter)
Henk Koppelaar and Peyman Nasehpour, On Hardy's Apology Numbers, arXiv:2008.08187 [math.NT], 2020.
Eric Weisstein's World of Mathematics, Narcissistic Number
D. T. Winter, Table of Armstrong Numbers
EXAMPLE
645 is in the sequence because 645 is 285 in hexadecimal and 2^3 + 8^3 + 5^3 = 645. (The exponent 3 is the number of hexadecimal digits.)
MATHEMATICA
Select[Range[10^7], # == Total[IntegerDigits[#, 16]^IntegerLength[#, 16]] &] (* Michael De Vlieger, Nov 04 2020 *)
PROG
(PARI) isok(n) = {my(b=16, d=digits(n, b), e=#d); sum(k=1, #d, d[k]^e) == n; } \\ Michel Marcus, Feb 25 2019
(PARI) select( is_A161953(n)={n==vecsum([d^#n|d<-n=digits(n, 16)])}, [1..10^5]) \\ M. F. Hasler, Nov 22 2019
(Python)
from itertools import islice, combinations_with_replacement
def A161953_gen(): # generator of terms
for k in range(1, 74):
a = tuple(i**k for i in range(16))
yield from (x[0] for x in sorted(filter(lambda x:x[0] > 0 and tuple(int(d, 16) for d in sorted(hex(x[0])[2:])) == x[1], \
((sum(map(lambda y:a[y], b)), b) for b in combinations_with_replacement(range(16), k)))))
CROSSREFS
KEYWORD
base,fini,full,nonn
AUTHOR
Joseph Myers, Jun 22 2009
EXTENSIONS
Terms sorted in increasing order by Pontus von Brömssen, Mar 03 2019
STATUS
approved