cp's OEIS Frontend

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.

Showing 1-2 of 2 results.

A352084 Integers m such that wt(m) divides wt(m^2) where wt(m) = A000120(m) is the binary weight of m.

Original entry on oeis.org

1, 2, 3, 4, 6, 7, 8, 12, 14, 15, 16, 21, 24, 28, 30, 31, 32, 37, 42, 45, 48, 53, 56, 60, 62, 63, 64, 69, 73, 74, 79, 81, 83, 84, 90, 91, 96, 106, 112, 120, 124, 126, 127, 128, 133, 137, 138, 141, 146, 148, 155, 157, 158, 159, 161, 162, 165, 166, 168, 177, 180
Offset: 1

Views

Author

Bernard Schott, Mar 03 2022

Keywords

Comments

Integers m such that A000120(m) divides A159918(m).
This is a problem proposed by the French site Diophante in the links section.
The first 18 terms are the same as A268415, then A268415(19) = 41 while a(19) = 42.
The corresponding quotients are in A352085.
The smallest term k such that the corresponding quotient = n is A352086(n).
Some subsequences:
-> wt(m^2) = wt(m) iff m is in A077436.
-> wt(m^2) / wt(m) = 2 iff m is in A083567.
-> When m is a power of 2 (A000079): wt(2^k) = wt((2^k)^2) = wt(2^(2k)) = 1.

Examples

			37_10 = 100101_2, digsum_2(37) = 1+1+1 = 3; then 37^2 = 1369_10 = 10101011001_2, digsum_2(1369) = 1+1+1+1+1+1 = 6; as 3 divides 6, 37 is a term.
		

Crossrefs

Cf. A351650 (similar for base 10).
Subsequences: A000079, A023758, A077436, A083567.

Programs

  • Mathematica
    Select[Range[180], Divisible[Total[IntegerDigits[#^2, 2]], Total[IntegerDigits[#, 2]]] &] (* Amiram Eldar, Mar 03 2022 *)
  • PARI
    isok(m) = !(hammingweight(m^2) % hammingweight(m)); \\ Michel Marcus, Mar 03 2022
  • Python
    def ok(n): return n > 0 and bin(n**2).count('1')%bin(n).count('1') == 0
    print([m for m in range(1, 200) if ok(m)]) # Michael S. Branicky, Mar 03 2022
    

Extensions

More terms from Amiram Eldar, Mar 03 2022

A352085 a(n) is the quotient wt(m^2) / wt(m), where wt = binary weight = A000120 and m = A352084(n).

Original entry on oeis.org

1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 2, 2, 1, 2, 1, 1, 1, 1, 1, 2, 2, 2, 1, 2, 2, 2, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 1, 2, 2, 2, 2, 2, 2
Offset: 1

Views

Author

Bernard Schott, Mar 05 2022

Keywords

Comments

All positive integers are terms of this sequence and the smallest integer k such that a(k) = n is A352086(n).
a(n) = 1 iff m = A352084(n) is a term of A077436, and a(n) = 2 iff m = A352084(n) is a term of A083567.

Examples

			For n=19, A352084(19) = 42_10 = 101010_2 => wt(42) = 3 ones; then 42^2 = 1764_10 = 11011100100_2 => wt(1764) = 6 ones, so that a(19) = wt(42^2) / wt(42) = 6/3 = 2.
		

Crossrefs

Programs

  • Mathematica
    Select[Total[IntegerDigits[#^2, 2]]/Total[IntegerDigits[#, 2]] & /@ Range[300], IntegerQ] (* Amiram Eldar, Mar 05 2022 *)
  • PARI
    lista(nn) = my(list = List(), q); for (n=1, nn, if (denominator(q=hammingweight(n^2)/hammingweight(n)) == 1, listput(list, q));); Vec(list); \\ Michel Marcus, Mar 05 2022
    
  • Python
    from itertools import count, islice
    def agen(): # generator of terms
        for m in count(1):
            q, r = divmod(bin(m**2).count('1'), bin(m).count('1'))
            if r == 0:
                yield q
    print(list(islice(agen(), 100))) # Michael S. Branicky, Mar 05 2022

Formula

a(n) = A159918(A352084(n))/A000120(A352084(n)).

Extensions

More terms from Michel Marcus, Mar 05 2022
Showing 1-2 of 2 results.