login

Year-end appeal: Please make a donation to the OEIS Foundation to support ongoing development and maintenance of the OEIS. We are now in our 61st year, we have over 378,000 sequences, and we’ve reached 11,000 citations (which often say “discovered thanks to the OEIS”).

A355633
a(n) is the sum of the divisors of n whose binary expansions appear as substrings in the binary expansion of n.
3
1, 3, 4, 7, 6, 12, 8, 15, 10, 18, 12, 28, 14, 24, 19, 31, 18, 30, 20, 42, 22, 36, 24, 60, 26, 42, 31, 56, 30, 57, 32, 63, 34, 54, 36, 70, 38, 60, 43, 90, 42, 66, 44, 84, 54, 72, 48, 124, 50, 78, 55, 98, 54, 93, 72, 120, 61, 90, 60, 133, 62, 96, 74, 127, 66
OFFSET
1,2
FORMULA
a(n) <= A000203(n).
a(2^n) = 2^(n+1) - 1 for any n >= 0.
EXAMPLE
For n = 84:
- the binary expansion of 84 is "1010100",
- we have the following divisors:
d bin(d) in bin(84)?
-- ------- -----------
1 1 Yes
2 10 Yes
3 11 No
4 100 Yes
6 110 No
7 111 No
12 1100 No
14 1110 No
21 10101 Yes
28 11100 No
42 101010 Yes
84 1010100 Yes
- so a(84) = 1 + 2 + 4 + 21 + 42 + 84 = 154.
MATHEMATICA
a[n_] := DivisorSum[n, # &, StringContainsQ @@ IntegerString[{n, #}, 2] &]; Array[a, 100] (* Amiram Eldar, Jul 16 2022 *)
PROG
(PARI) a(n, base=2) = { my (d=digits(n, base), s=setbinop((i, j) -> fromdigits(d[i..j], base), [1..#d]), v=0); for (k=1, #s, if (s[k] && n%s[k]==0, v+=s[k])); return (v) }
(Python)
from sympy import divisors
def a(n):
s = bin(n)[2:]
return sum(d for d in divisors(n, generator=True) if bin(d)[2:] in s)
print([a(n) for n in range(1, 66)]) # Michael S. Branicky, Jul 11 2022
CROSSREFS
Cf. A000203, A027750, A093640, A355620 (decimal analog), A355634.
Sequence in context: A344575 A254981 A116607 * A107749 A353783 A367466
KEYWORD
nonn,base
AUTHOR
Rémy Sigrist, Jul 11 2022
STATUS
approved