This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.
%I A069648 #29 May 22 2025 10:21:34 %S A069648 1,2,2,11,47,46,983,193534,676644395 %N A069648 a(1) = 1, otherwise smallest m > 1 such that the sum of digits of m^n is k^n for some k > 1. %C A069648 n-th root of A069647(n). %C A069648 Probably k = 2 in all cases. - _Charles R Greathouse IV_, Feb 26 2014 %F A069648 a(n) > c^2^n for n > 1 where c = 10^(1/81) = 1.0288.... - _Charles R Greathouse IV_, Feb 26 2014 %o A069648 (Python) %o A069648 import sympy %o A069648 from sympy import factorint %o A069648 def DigitSum(x): %o A069648 return sum(int(i) for i in str(x)) %o A069648 def PowExp(p): %o A069648 n = 2 %o A069648 while n < 10000*(10**(int(2**p/9)/p)): %o A069648 if DigitSum(n**p) != 1: %o A069648 count = 0 %o A069648 for i in list(factorint(DigitSum(n**p)).values()): %o A069648 if (int(i)/p) % 1 == 0: %o A069648 count += 1 %o A069648 if count == len(list(factorint(DigitSum(n**p)).values())): %o A069648 return n %o A069648 else: %o A069648 n += 1 %o A069648 else: %o A069648 n += 1 %o A069648 print(1) %o A069648 x = 2 %o A069648 while x < 20: %o A069648 print(PowExp(x)) %o A069648 x += 1 %o A069648 # _Derek Orr_, Feb 16 2014 %o A069648 (PARI) %o A069648 a237992(maxn, maxm) = { %o A069648 print1("1, "); %o A069648 for(n=1, maxn, %o A069648 for(m=2, maxm, %o A069648 t=eval(Vec(Str(m^n))); %o A069648 d=sum(i=1, #t, t[i]); %o A069648 if(d>1 && ispower(d, n), print1(m, ", "); break()) %o A069648 ) %o A069648 ) %o A069648 } %o A069648 a237992(8, 1000000) \\ _Colin Barker_, Feb 23 2014 %o A069648 (PARI) a(n)=if(n==1,return(1)); my(t=2^n,t3=3^n,k,s); while((s=sumdigits(k++^n))<t || (s<t3 && s!=t) || (s>=t3 && ispower(s,n)),); k \\ _Charles R Greathouse IV_, Feb 26 2014 %o A069648 (Python) %o A069648 from sympy import factorint %o A069648 def A069648(n): %o A069648 if (n == 1): %o A069648 return 1 %o A069648 else: %o A069648 m = 2 %o A069648 while True: %o A069648 x = sum(int(d) for d in str(m**n)) %o A069648 if x > 1 and not any(map(lambda x:x%n,factorint(x).values())): %o A069648 return m %o A069648 m += 1 # _Chai Wah Wu_, Aug 11 2014 %Y A069648 Cf. A069647. %K A069648 more,nonn,base %O A069648 1,2 %A A069648 _Amarnath Murthy_, Apr 04 2002 %E A069648 Corrected and extended by _David Wasserman_, Apr 23 2003