A330815
Numbers with a record number of divisors whose binary expansion is palindromic.
Original entry on oeis.org
1, 3, 9, 15, 45, 135, 189, 315, 495, 765, 2079, 3465, 4095, 8415, 12285, 45045, 69615, 135135, 405405, 528255, 675675, 765765, 2297295, 5810805, 11486475, 17432415, 29054025, 32927895, 43648605, 50331645, 98783685, 184549365, 296351055, 392837445, 553648095
Offset: 1
9 is a term since it has 3 binary palindromic divisors, 1, 3 and 9, whose binary representations are 1, 11 and 1001. All the numbers below 9 have less than 3 binary palindromic divisors.
-
binPalDiv[n_] := DivisorSum[n, 1 &, PalindromeQ @ IntegerDigits[#, 2] &]; bmax = 0; seq = {}; Do[b = binPalDiv[n]; If[b > bmax, bmax = b; AppendTo[seq, n]], {n, 1, 10^5}]; seq
A355716
a(n) is the smallest number that has exactly n binary palindrome divisors (A006995).
Original entry on oeis.org
1, 3, 9, 15, 99, 45, 135, 189, 315, 495, 945, 765, 2079, 6237, 3465, 5355, 4095, 8415, 31185, 20475, 25245, 12285, 85995, 58905, 61425, 45045, 69615, 176715, 446985, 225225, 328185, 208845, 135135, 405405, 528255, 1396395, 675675, 2027025, 765765, 5360355, 2993445, 3968055, 3828825
Offset: 1
a(4) = 15 since 15 has 4 divisors {1, 3, 5, 15} that are all palindromes when written in binary: 1, 11, 101 and 1111; no positive integer smaller than 15 has four divisors that are binary palindromes, hence a(4) = 15.
a(5) = 99 since 99 has 6 divisors {1, 3, 9, 11, 33, 99} of which only 11 is not a palindrome when written in binary: 11_10 = 1011_2; no positive integer smaller than 99 has five divisors that are binary palindromes, hence a(5) = 99.
-
f[n_] := DivisorSum[n, 1 &, PalindromeQ[IntegerDigits[#, 2]] &]; seq[len_, nmax_] := Module[{s = Table[0, {len}], c = 0, n = 1, i}, While[c < len && n < nmax, i = f[n]; If[i <= len && s[[i]] == 0, c++; s[[i]] = n]; n++]; s]; seq[25, 10^5] (* Amiram Eldar, Jul 15 2022 *)
-
is(n) = my(d=binary(n)); d==Vecrev(d); \\ A006995
a(n) = my(k=1); while (sumdiv(k, d, is(d)) != n, k++); k; \\ Michel Marcus, Jul 15 2022
-
from sympy import divisors
from itertools import count, islice
def c(n): b = bin(n)[2:]; return b == b[::-1]
def f(n): return sum(1 for d in divisors(n, generator=True) if c(d))
def agen():
n, adict = 1, dict()
for k in count(1):
fk = f(k)
if fk not in adict: adict[fk] = k
while n in adict: yield adict[n]; n += 1
print(list(islice(agen(), 20))) # Michael S. Branicky, Jul 23 2022
Showing 1-2 of 2 results.
Comments