login
a(n) = smallest number > 1 such that a(n)^n contains a(n) as a substring.
2

%I #29 Jan 25 2022 12:26:30

%S 2,5,4,5,2,4,2,2,2,2,2,3,2,4,2,3,2,2,2,3,2,3,3,2,2,3,2,2,2,2,2,2,2,4,

%T 3,3,2,2,3,2,2,3,2,2,2,3,2,2,2,2,2,2,2,3,2,2,2,2,2,2,2,2,2,3,2,2,2,2,

%U 2,2,2,2,2,3,2,2,2,2,2,2,2,2,3,2,2,2,2

%N a(n) = smallest number > 1 such that a(n)^n contains a(n) as a substring.

%C It is very probable that a(n) = 2 for n > 169.

%C a(n) <= 5 since 5^n ends in 5 for n > 0. - _Michael S. Branicky_, Jan 25 2022

%H Michael S. Branicky, <a href="/A235052/b235052.txt">Table of n, a(n) for n = 1..10000</a>

%e 4 is the smallest number such that 4^3 contains a 4 and 4^6 contains a 4, so a(3) = 4 and a(6) = 4.

%t a[n_] := Block[{k = 2}, While[StringPosition[ToString[k^n], ToString@k] == {}, k++]; k]; Array[a, 80] (* _Giovanni Resta_, Jan 11 2014 *)

%o (Python)

%o def f(x):

%o for n in range(2,10**3):

%o if str(n**x).count(str(n)) > 0:

%o return n

%o x = 1

%o while x < 200:

%o print(f(x))

%o x += 1

%o (Python)

%o def a(n): return min(k for k in range(2, 6) if str(k) in str(k**n))

%o print([a(n) for n in range(1, 88)]) # _Michael S. Branicky_, Jan 25 2022

%o (Haskell)

%o import Data.List (isInfixOf)

%o a235052 n = head [x | x <- [2..], show x `isInfixOf` (show $ x ^ n)]

%o -- _Reinhard Zumkeller_, Jan 18 2014

%o (PARI) a(n) = my(k=2); while(#strsplit(Str(k^n), Str(k))==1, k++); k; \\ _Michel Marcus_, Jan 25 2022

%Y Cf. A034293, A236046.

%K nonn,base

%O 1,1

%A _Derek Orr_, Jan 02 2014

%E a(81) and beyond from _Michael S. Branicky_, Jan 25 2022