A102032 a(n) is the smallest positive integer k such that, if kn is written in base 2, it requires exactly n ones.
1, 3, 7, 15, 11, 21, 89, 255, 167, 307, 349, 1365, 1259, 6729, 6417, 65535, 28431, 29127, 54757, 209715, 274627, 750685, 706649, 5592405, 2663383, 9679163, 14913005, 186946121, 37025579, 353440017, 1175487521, 4294967295
Offset: 1
Keywords
Examples
Example: If n=7 then 7(89)=623 which written in base 2 is 1001101111 using exactly 7 ones and 89 is the smallest positive integer with this property. Hence a(7)=89. The number 1001101111 is usually known as Niven number in base 2. We called 623 a minimal Niven number.
References
- I. Vardi, Niven numbers, Computational Recreations in Mathematics, Addison-Wesley, 1991, pp. 19 and 28--31.
Links
- Eugen J. Ionascu and Ray Chandler, Table of n, a(n) for n = 1..2024
- J. M. De Koninck, N. Doyon and I. Katai, On the counting function for the Niven numbers, Acta Arith. 106 (2003), 265--275.
- E. J. Ionascu, H. Fredricksen, F. Luca and P. Stanica, Minimal Niven numbers, Acta Arith. 132 (2008), 135--159.
- E. J. Ionascu, F. Luca, P. Stanica and H. Fredricksen, Remarks on a sequence of minimal Niven numbers, Proceedings of the International Workshop, SSC 2007 (Sequences, Subsequences and Consequences) Springer, 162--168.
Programs
-
Maple
with(numtheory): fjv6:=proc(n,m) local i,j,k,l,x,x1,y,y1,z,z1,w,stopp,s,t,u,v,A,F,G,out; i:=n;stopp:=0; x1:=2^(m*i+6)-1; x:=x1 mod i;j:=0; while stopp=0 and j<=m*i+5 do l:=j; while stopp=0 and l<=m*i+4 do k:=l; while stopp=0 and k<=m*i+3 do s:=k; while stopp=0 and s<=m*i+2 do t:=s; while stopp=0 and t<=m*i+1 do v:=t; while stopp=0 and v<=m*i do y1:=2^(m*i+5-j)+2^(m*i+4-l)+2^(m*i+3-k)+2^(m*i+2-s)+2^(m*i+1-t)+2^(m*i-v); y:=y1 mod i; if y=x then z:=(x1-y1)/i;out:=[m*i, z]; stopp:=1; fi; v:=v+1;od;t:=t+1;od;s:=s+1;od; k:=k+1; od;l:=l+1;od;j:=j+1;od; if stopp=0 then out:=[m*i,0];fi; out; end: formula:=proc(n) local x,y,B,expon,outputis, theOddFactor; x:=n+1;B:=ifactors(x);expon:=B[2][1][2];theOddFactor:=(n+1)/2^expon; y:=isprime(n); if theOddFactor=1 and y=true then outputis:=[n,(2^(n+expon-1)+2^n-2^(n-expon)-1)/n];fi; if theOddFactor>1 or y=false then outputis:=fjv6(n,1);fi; lprint(outputis[1],outputis[2]); end: fjfromis6:=proc(n,m) local k,B,expon, theoddfac,par,stopp,av,sub; av:=0;for k from n to m do par:=k mod 2; if par=0 then B:=ifactors(k);expon:=B[2][1][2];theoddfac:=k/2^expon; sub:=fjv6(theoddfac,2^expon); lprint(sub[1], sub[2]); fi; stopp:=0; if par=1 then formula(k); fi; od; end: fjfromis6(1,185); # Alternative: F:= proc(k,x,n,dmax) option remember; local d,z,v; if k = 0 then if x = 0 then return 0 else return infinity fi end; for d from k-1 to dmax do v:= procname(k-1,(x - 2^d) mod n,n, d-1) ; if v < 2^d then return v + 2^d fi od; infinity; end proc: seq(F(n,0,n,infinity)/n, n=1..100); # Robert Israel, Aug 26 2015
-
Mathematica
F[k_, x_, n_, dMax_] := F[k, x, n, dMax] = Module[{d, z, v}, If[k == 0, If[x == 0, Return[0], Return[Infinity]]]; For[d = k - 1, d <= dMax, d++, v = F[k - 1, Mod[x - 2^d, n], n, d - 1]; If[v < 2^d, Return[v + 2^d]]]; Infinity]; Table[F[n, 0, n, Infinity]/n, {n, 1, 32}] (* Jean-François Alcover, Jun 22 2020, after Robert Israel *)
-
PARI
a(n)=my(K=n);while(hammingweight(K)!=n,K+=n);K/n \\ Charles R Greathouse IV, Feb 04 2013
Formula
a(n) = 2^n-1 if n=2^k or a(n) = (2^(n+k-1)+2^n-2^(n-k)-1)/n if n=2^k-1 is a prime number; unknown for other values of n.
Extensions
Edited by Ray Chandler, Nov 16 2008
Comments