%I #20 Oct 18 2024 17:59:30
%S 8,20,44,50,68,92,110,124,125,164,170,188,230,236,242,268,275,292,310,
%T 332,374,388,410,412,425,436,470,506,508,548,575,578,590,596,605,628,
%U 668,670,682,716,730,764,775,782,788,830,844,902,908,932,935,964,970
%N Products of three prime numbers of odd index.
%C Also Heinz numbers of integer partitions with 3 parts, all of which are odd. These partitions are counted by A001399.
%e The sequence of terms together with their prime indices begins:
%e 8: {1,1,1} 268: {1,1,19} 575: {3,3,9}
%e 20: {1,1,3} 275: {3,3,5} 578: {1,7,7}
%e 44: {1,1,5} 292: {1,1,21} 590: {1,3,17}
%e 50: {1,3,3} 310: {1,3,11} 596: {1,1,35}
%e 68: {1,1,7} 332: {1,1,23} 605: {3,5,5}
%e 92: {1,1,9} 374: {1,5,7} 628: {1,1,37}
%e 110: {1,3,5} 388: {1,1,25} 668: {1,1,39}
%e 124: {1,1,11} 410: {1,3,13} 670: {1,3,19}
%e 125: {3,3,3} 412: {1,1,27} 682: {1,5,11}
%e 164: {1,1,13} 425: {3,3,7} 716: {1,1,41}
%e 170: {1,3,7} 436: {1,1,29} 730: {1,3,21}
%e 188: {1,1,15} 470: {1,3,15} 764: {1,1,43}
%e 230: {1,3,9} 506: {1,5,9} 775: {3,3,11}
%e 236: {1,1,17} 508: {1,1,31} 782: {1,7,9}
%e 242: {1,5,5} 548: {1,1,33} 788: {1,1,45}
%t Select[Range[100],PrimeOmega[#]==3&&OddQ[Times@@PrimePi/@First/@FactorInteger[#]]&]
%o (PARI) isok(m) = my(f=factor(m)); (bigomega(f)==3) && (#select(x->!(x%2), apply(primepi, f[,1]~)) == 0); \\ _Michel Marcus_, Nov 10 2020
%o (Python)
%o from sympy import primerange
%o from itertools import combinations_with_replacement as mc
%o def aupto(limit):
%o pois = [p for i, p in enumerate(primerange(2, limit//4+1)) if i%2 == 0]
%o return sorted(set(a*b*c for a, b, c in mc(pois, 3) if a*b*c <= limit))
%o print(aupto(971)) # _Michael S. Branicky_, Aug 20 2021
%o (Python)
%o from math import isqrt
%o from sympy import primepi, primerange, integer_nthroot
%o def A338471(n):
%o def bisection(f,kmin=0,kmax=1):
%o while f(kmax) > kmax: kmax <<= 1
%o while kmax-kmin > 1:
%o kmid = kmax+kmin>>1
%o if f(kmid) <= kmid:
%o kmax = kmid
%o else:
%o kmin = kmid
%o return kmax
%o def f(x): return int(n+x-sum((primepi(x//(k*m))+1>>1)-(b+1>>1)+1 for a,k in filter(lambda x:x[0]&1,enumerate(primerange(integer_nthroot(x,3)[0]+1),1)) for b,m in filter(lambda x:x[0]&1,enumerate(primerange(k,isqrt(x//k)+1),a))))
%o return bisection(f,n,n) # _Chai Wah Wu_, Oct 18 2024
%Y A066208 allows products of any length (strict: A258116).
%Y A307534 is the squarefree case.
%Y A338469 is the restriction to odds.
%Y A338556 is the version for evens (strict: A338557).
%Y A000009 counts partitions into odd parts (strict: A000700).
%Y A001399(n-3) counts 3-part partitions (strict: A001399(n-6)).
%Y A008284 counts partitions by sum and length.
%Y A014311 is a ranking of ordered triples (strict: A337453).
%Y A014612 lists Heinz numbers of all triples (strict: A007304).
%Y A023023 counts 3-part relatively prime partitions (strict: A101271).
%Y A023023 counts 3-part relatively prime partitions (strict: A078374).
%Y A046316 lists products of exactly three odd primes (strict: A046389).
%Y A066207 lists numbers with all even prime indices (strict: A258117).
%Y A075818 lists even Heinz numbers of 3-part partitions (strict: A075819).
%Y A285508 lists Heinz numbers of non-strict triples.
%Y A307719 counts 3-part pairwise coprime partitions (strict: A220377).
%Y Cf. A000217, A001221, A001222, A005117, A037144, A056239, A112798.
%Y Subsequence of A332820.
%K nonn
%O 1,1
%A _Gus Wiseman_, Nov 08 2020