%I #58 Jan 27 2022 21:04:24
%S 1,2,3,2,2,5,2,3,3,7,2,2,2,5,2,3,5,11,2,3,2,3,5,13,2,3,7,3,7,2,2,17,2,
%T 2,3,19,2,5,2,5,2,3,5,11,2,3,5,7,11,23,2,3,2,3,2,3,5,13,2,3,5,11,13,2,
%U 3,7,2,3,5,7,13,29,2,3,7,3,7,31,2,2,2,17
%N Irregular triangle read by rows, where row n contains the distinct primes that are contained in the binary representation of n as substrings; first row = [1] by convention.
%C Row n = primes in row n of tables A165416 or A119709.
%H Reinhard Zumkeller, <a href="/A225243/b225243.txt">Rows n = 1..1024 of table, flattened</a>
%H Michael De Vlieger, <a href="/A225243/a225243.png">Plot of pi(p) such that T(n,k) = p</a> for n = 1..4096.
%e . n T(n,*) | in binary
%e . --- --------------------|-------------------------------------------
%e . 1: 1 | 00001: .
%e . 2: 2 | 00100: ___10
%e . 3: 3 | 00011: ___11
%e . 4: 2 | 00100: __10_
%e . 5: 2 5 | 00101: ___10 _11__
%e . 6: 2 3 | 00110: ___10 __11_
%e . 7: 3 7 | 00111: __11_ __111
%e . 8: 2 | 01000: _10__
%e . 9: 2 | 01001: _10__
%e . 10: 2 5 | 01010: _10__ _101_
%e . 11: 2 3 5 11 | 01011: _10__ ___11 _101_ 01011
%e . 12: 2 3 | 01100: ___10 _11__
%e . 13: 2 3 5 13 | 01101: __10_ _11__ __101 01101
%e . 14: 2 3 7 | 01110: ___10 _11__ _111_
%e . 15: 3 7 | 01111: _11__ _111_
%e . 16: 2 | 10000: 10___
%e . 17: 2 17 | 10001: 10___ 10001
%e . 18: 2 | 10010: 10___
%e . 19: 2 3 19 | 10011: 10___ ___11 10011
%e . 20: 2 5 | 10100: 10___ 101__
%e . 21: 2 5 | 10101: 10___ 101__
%e . 22: 2 3 5 11 | 10110: 10___ __11_ 101__ 10110
%e . 23: 2 3 5 7 11 23 | 10111: 10___ __11_ 101__ __111 1011_ 10111
%e . 24: 2 3 | 11000: _10__ 11___
%e . 25: 2 3 | 11001: _10__ 11___ .
%t Array[Union@ Select[FromDigits[#, 2] & /@ Rest@ Subsequences@ IntegerDigits[#, 2], PrimeQ] &, 34] /. {} -> {1} // Flatten (* _Michael De Vlieger_, Jan 26 2022 *)
%o (Haskell)
%o a225243 n k = a225243_tabf !! (n-1) !! (k-1)
%o a225243_row n = a225243_tabf !! (n-1)
%o a225243_tabf = [1] : map (filter ((== 1) . a010051')) (tail a165416_tabf)
%o (Python)
%o from sympy import isprime
%o from itertools import count, islice
%o def primess(n):
%o b = bin(n)[2:]
%o ss = (int(b[i:j], 2) for i in range(len(b)) for j in range(i+2, len(b)+1))
%o return sorted(set(k for k in ss if isprime(k)))
%o def agen():
%o yield 1
%o for n in count(2):
%o yield from primess(n)
%o print(list(islice(agen(), 82))) # _Michael S. Branicky_, Jan 26 2022
%Y Cf. A078826 (row lengths), A078832 (left edge), A078833 (right edge), A004676, A007088.
%K nonn,base,tabf
%O 1,2
%A _Reinhard Zumkeller_, Aug 14 2013
|