A117891 Numbers k such that both the number of non-leading 0's in the binary representation of k and the number of 1's in the binary representation of k divide k.
2, 4, 6, 10, 12, 16, 18, 24, 36, 40, 42, 48, 55, 60, 80, 84, 108, 110, 120, 126, 132, 144, 156, 172, 180, 184, 192, 204, 212, 216, 222, 228, 232, 240, 246, 252, 256, 276, 300, 318, 324, 336, 340, 360, 366, 378, 414, 420, 438, 440, 444, 460, 462, 474, 480, 486
Offset: 1
Examples
24 is 11000 in binary. This binary representation has three 0's and 3 divides 24. Also, the binary representation has two 1's and 2 also divides 24. So 24 is in the sequence.
Links
- Robert Israel, Table of n, a(n) for n = 1..10000
Programs
-
C
#include
int main(int argc, char *argv[]) { for(int n=1; n< 500 ; n++) { int digs[2] ; int nshifted=n ; digs[0]=digs[1]=0 ; while(nshifted) { digs[ nshifted & 1]++ ; nshifted >>= 1 ; } if ( digs[0] && digs[1]) if( ( n % digs[0]) == 0 && (n %digs[1]) ==0) printf("%d,",n) ; } } /* R. J. Mathar, Apr 03 2006 */ -
Maple
filter:= proc(n) local L, x,m; L:= convert(n,base,2); x:= convert(L,`+`); m:= nops(L); x < m and n mod x = 0 and n mod (m-x) = 0 end proc: select(filter, [$1..1000]);
-
Mathematica
bdQ[n_]:=Module[{idn2=IntegerDigits[n,2],x,y},x=Count[idn2,1];y=Count[ idn2,0]; If[x==0,x=n+1];If[y==0,y=n+1];And@@Divisible[n,{x,y}]]; Select[ Range[500],bdQ] (* Harvey P. Dale, Jan 22 2012 *)
Extensions
More terms from R. J. Mathar, Apr 03 2006