A136809 Numbers k such that k and k^2 use only the digits 0, 1, 2 and 3.
0, 1, 10, 11, 100, 101, 110, 111, 1000, 1001, 1010, 1011, 1100, 1101, 1110, 10000, 10001, 10010, 10011, 10100, 10101, 10110, 10111, 11000, 11001, 11010, 11100, 11101, 100000, 100001, 100010, 100011, 100100, 100101, 100110, 100111, 101000, 101001, 101010, 101011, 101100, 101110, 110000, 110001, 110010, 110100, 110101, 111000, 111001, 111010
Offset: 1
Examples
111^2 = 12321, 11101^2 = 123232201, and 101011^2 = 10203222121, 111001^2 = 12321222001, so 111, 11101, 101011 and 111001 are in the sequence, but: 110011^2 = 12102420121, so 110011 is not in the sequence; also 1100011^2 = 1210024200121, so 1100011 is not in the sequence, and 1010101^2 = 1020304030201, so 1010101 is not in the sequence; but 1110001^2 = 1232102220001, so 1110001 is in the sequence; also 1010100100001^2 = 1020302212022030200200001.
Links
- Michael S. Branicky, Table of n, a(n) for n = 1..12670 (all terms with <= 19 digits; terms 1..1380 from Jonathan Wellons)
- Jonathan Wellons, Tables of Shared Digits
Crossrefs
Programs
-
Mathematica
Select[Range[0,200000],And@@(ContainsAll[{0,1,2,3},Union@IntegerDigits@#]&/@{#,#^2})&] (* Giorgos Kalogeropoulos, May 21 2021 *) With[{c={0,1,2,3}},Select[FromDigits/@Tuples[c,6],SubsetQ[c,IntegerDigits[ #^2]]&]] (* Harvey P. Dale, Jun 01 2021 *)
-
PARI
select( {is_A136809(n,o(n)=vecmax(digits(n))<4)=o(n^2)&&o(n)}, [fromdigits(binary(n))|n<-[0..99]]) \\ M. F. Hasler, Nov 03 2020
-
Python
from itertools import count, islice def agen(only="0123"): digset, valid = set(only), set(only) for e in count(1): found, newvalid = set(), set() for tstr in valid: t = int(tstr) if (tstr == "0" or tstr[0] != "0") and set(str(t**2)) <= digset: found.add(t) for d in digset: dtstr = d + tstr dt = int(dtstr) remstr = str(dt**2)[-e:] if set(remstr) <= digset: newvalid.add(dtstr) valid = newvalid yield from sorted(found) print(list(islice(agen(), 50))) # Michael S. Branicky, Jul 07 2022
Comments