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”).

A258981
Numbers containing only 1's and 0's in their base-2, base-3, and base-4 representations.
8
0, 1, 4, 81, 84, 85, 256, 273, 324, 325, 336, 337, 1089, 1092, 1093, 20496, 20497, 20736, 20737, 20740, 65620, 65856, 65857, 81921, 81984, 81985, 82000, 86032, 86277, 86292, 86293, 86356, 262468, 262480, 263169
OFFSET
1,3
COMMENTS
As a trend in the first 1000 numbers in the sequence, there tend to be clusters of these numbers, with very large gaps where a number with this property cannot be found.
This sequence lists the numbers that are counted in A230360. - Matthew Goers, Jul 11 2015
Note that a(27) = 82000 also contains no digit > 1 in base 5, see A146025. - Matthew Goers, Jul 11 2015
Numbers that can be expressed both as a sum of distinct powers of 3 and as a sum of distinct powers of 4. - Antti Karttunen, Aug 18 2015
EXAMPLE
81 is 10000 in base 3 and 1101 in base 4 so 81 is a term.
273 is 101010 in base 3 and 10101 in base 4 so 273 is a term.
MAPLE
N:= 20: # to get all terms < 2*4^(N-1)
g:= proc(n)
local L, j, m, a;
L:= convert(n, base, 2);
a:= add(4^(j-1)*L[j], j=1..nops(L));
if has(convert(a, base, 3), 2) then NULL else a fi
end proc:
map(g, [$0..2^N]); # Robert Israel, Jul 14 2015
MATHEMATICA
ok3[n_] := 1 == Max@ IntegerDigits[n, 3]; to4[n_] := FromDigits[ IntegerDigits[n, 2], 4]; Select[to4/@ Range[2^20], ok3] (* Giovanni Resta, Jun 16 2015 *)
PROG
(C#)
//The syntax for the EssentialBasic base conversion is as follows:
//string LongDecimalToBase(long initial_number, int base_to_convert_into)
//string BaseToBase(long initial_number, int base_that_initial_number_is_in, int base_to_convert_into
long i = 0; string base3 = ""; string base4 = ""; bool bad = false;
while (true){
base4 = EssentialBasic.Mathematics.BaseConversion.LongDecimalToBase(i++, 2);
base3 = EssentialBasic.Mathematics.BaseConversion.BaseToBase(base4, 4, 3);
for (int i_ = 0; i_ < base3.Length; i_++){
if (base3.Substring(i_, 1) == "2"){
bad = true;
break;
}
}
if (bad == false){
Console.WriteLine(Convert.ToInt64(EssentialBasic.Mathematics.BaseConversion.BaseToBase(base4, 4, 2), 2));
}
bad = false;
}
(Sage) [0]+[n for n in [1..1000000] if max(n.digits(base=3))==1 and max(n.digits(base=4))==1] # Tom Edgar, Jul 11 2015
(PARI) digitsb(m)=vecsort(concat(digits(m, 3), digits(m, 4)), , 8)
is_ok(n)={my(v=digitsb(n), r=0, i); for(i=2, 9, r = r || vecsearch(v, i)); !r}
first(m)={ my(v=vector(m), i, k=0); for(i=1, m, while(!is_ok(k), k++); v[i] = k; k++); v; } /* Anders Hellström, Jul 19 2015 */
(PARI) isok(n) = (n==0) || ((vecmax(digits(n, 3)) < 2) && (vecmax(digits(n, 4)) < 2)); \\ Michel Marcus, Aug 05 2015
(PARI) print1(0); for(n=1, 1e5, vecmax(digits(t=subst(Pol(binary(n)), 'x, 4), 3))<2&&print1(", "t)) \\ M. F. Hasler, Feb 01 2016
(PARI) \\ See links too.
(Python)
def digits(n, b=10): # digits of n in base 2 <= b <= 62
x, y = n, ''
while x >= b:
x, r = divmod(x, b)
y += str(r) if r < 10 else (chr(r+87) if r < 36 else chr(r+29))
y += str(x) if x < 10 else (chr(x+87) if x < 36 else chr(x+29))
return y[::-1]
A258981_list = [n for n in (int(format(d, 'b'), 4) for d in range(10**4)) if max(digits(n, 3)) <= '1'] # Chai Wah Wu, Aug 13 2015
CROSSREFS
Intersection of A000695 and A005836.
Sequence in context: A116189 A159063 A337053 * A072363 A272884 A053901
KEYWORD
nonn,base
AUTHOR
Phil Lane, Jun 15 2015
STATUS
approved