login
A357481
a(n) is the least integer b such that the digit representation of n in base b is equal to the digit representation in base b of the initial terms of the sets of divisors of n in increasing order, or -1 if no such b exists.
1
2, -1, -1, -1, -1, 2, -1, 6, 6, 8, -1, 10, -1, 12, 12, 14, -1, 16, -1, 18, 18, 20, -1, 22, 20, 24, 24, 26, -1, 28, -1, 30, 30, 32, 30, 34, -1, 36, 36, 38, -1, 40, -1, 42, 42, 44, -1, 3, 42, 3, 48, 2, -1, 52, 50, 54, 54, 56, -1, 58, -1, 60, 2, 62, 60, 7, -1, 66, 66, 68, -1, 70, -1, 72, 7
OFFSET
1,1
COMMENTS
It appears that a(n) != -1 iff n in A056653.
LINKS
Peter Munn, Scatterplot with asinh-scale axes. (Axis labeled "A000027(n)" is n.)
EXAMPLE
In base 10, 12 is a term of A175252, and there is no other lesser base for which 12 works, so a(12) = 10.
PROG
(PARI) isok(k, b) = my(s=[]); fordiv(k, d, s=concat(s, digits(d, b)); if (fromdigits(s, b)==k, return(1)); if (fromdigits(s, b)> k, return(0)));
a(n) = if (n==1, 2, for (b=2, n-1, if (isok(n, b), return(b))); return(-1); );
(Python)
from sympy import divisors
from sympy.ntheory import digits
def ok(n, b):
target, s = digits(n, b)[1:], []
if target[0] != 1: return False
for d in divisors(n):
s += digits(d, b)[1:]
if len(s) >= len(target): return s == target
def a(n):
if n == 1: return 2
for b in range(2, n):
if ok(n, b): return b
return -1
print([a(n) for n in range(1, 76)]) # Michael S. Branicky, Oct 05 2022
CROSSREFS
KEYWORD
sign,base
AUTHOR
Michel Marcus, Sep 30 2022
STATUS
approved