login
Least positive multiple of n that when written in base 10 uses only 0's and 1's.
45

%I #106 Feb 01 2024 15:34:49

%S 1,10,111,100,10,1110,1001,1000,111111111,10,11,11100,1001,10010,1110,

%T 10000,11101,1111111110,11001,100,10101,110,110101,111000,100,10010,

%U 1101111111,100100,1101101,1110,111011,100000,111111,111010

%N Least positive multiple of n that when written in base 10 uses only 0's and 1's.

%C It is easy to show that a(n) always exists and in fact has at most n digits [Wu, 2014]. - _N. J. A. Sloane_, Jun 13 2014

%C a(n) = min{A007088(k): k > 0 and A007088(k) mod n = 0}. - _Reinhard Zumkeller_, Jan 10 2012

%H Chai Wah Wu, <a href="/A004290/b004290.txt">Table of n, a(n) for n = 0..9998</a> (first 2000 terms from T. D. Noe [and Ed Pegg Link])

%H Ed Pegg Jr., <a href="http://www.mathpuzzle.com/Binary.html">'Binary' Puzzle</a>.

%H Eric M. Schmidt, <a href="/A004290/a004290_1.sage.txt">Sage code to compute this sequence</a>.

%H Chai Wah Wu, <a href="http://www.jstor.org/stable/10.4169/amer.math.monthly.121.06.529">Pigeonholes and repunits</a>, Amer. Math. Monthly, 121 (2014), 529-533.

%F a(n) = n*A079339(n). - _Jonathan Sondow_, Jun 15 2014

%p f:= proc(n)

%p local L,x,m,r,k,j;

%p for x from 2 to n-1 do L[0,x]:= 0 od:

%p L[0,0]:= 1: L[0,1]:= 1;

%p for m from 1 do

%p if L[m-1,(-10^m) mod n] = 1 then break fi;

%p L[m,0]:= 1;

%p for k from 1 to n-1 do

%p L[m,k]:= max(L[m-1,k],L[m-1,k-10^m mod n])

%p od;

%p od;

%p r:= 10^m; k:= -10^m mod n;

%p for j from m-1 by -1 to 1 do

%p if L[j-1,k] = 0 then

%p r:= r + 10^j; k:= k - 10^j mod n;

%p fi

%p od;

%p if k = 1 then r:= r + 1 fi;

%p r

%p end proc:

%p 0,1, seq(f(n),n=2..100); # _Robert Israel_, Feb 09 2016

%t a[n_] := For[k = 1, True, k++, b = FromDigits[ IntegerDigits[k, 2] ]; If[Mod[b, n] == 0, Return[b]]]; a[0] = 0; Table[a[n], {n, 0, 34}] (* _Jean-François Alcover_, Jun 14 2013, after _Reinhard Zumkeller_ *)

%t With[{c=Rest[Union[FromDigits/@Flatten[Table[Tuples[{1,0},i],{i,10}], 1]]]}, Join[{0},Flatten[ Table[ Select[c,Divisible[#,n]&,1],{n,40}]]]] (* _Harvey P. Dale_, Dec 07 2013 *)

%o (Haskell)

%o a004290 0 = 0

%o a004290 n = head [x | x <- tail a007088_list, mod x n == 0]

%o -- _Reinhard Zumkeller_, Jan 10 2012

%o (Python) def A004290(n):

%o if n > 0:

%o for i in range(1,2**n):

%o x = int(bin(i)[2:])

%o if not x % n:

%o return x

%o return 0

%o # _Chai Wah Wu_, Dec 30 2014

%o (PARI) a(n) = {if( n==0, return (0)); my(m = n); while (vecmax(digits(m)) != 1, m+=n); m;} \\ _Michel Marcus_, Feb 09 2016, May 27 2020

%Y Cf. A004283-A004289, A078241-A078248, A079339, A096681-A096688, A257345.

%K nonn,base,nice

%O 1,2

%A _David W. Wilson_

%E Initial 0 deleted and offset corrected by _N. J. A. Sloane_, Jan 31 2024