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”).
%I #41 Sep 01 2024 13:45:18
%S 1,2,3,5,8,14,23,39,64,103,169,269,427,676,1065,1669,2628,4104,6414,
%T 10023,15608,24281,37733,58503,90616,140187,216625,334527,516126,
%U 795632,1225641,1886570,2901796,4460359,6851532,10518476,16138642,24748319
%N Where 3^n occurs in n-almost primes, starting at a(0)=1.
%H Max Alekseyev, <a href="/A078843/b078843.txt">Table of n, a(n) for n = 0..50</a>
%H Eric Weisstein's World of Mathematics, <a href="http://mathworld.wolfram.com/AlmostPrime.html">Almost Prime</a>.
%F a(n) = a(n-1) + appi3(n-k, floor(3^n/2^k)), where k = ceiling(n*c) with c = log(5/3)/log(5/2) = 0.55749295065024006729857073190835923443... and appi3(k,n) is the number of k-almost primes not divisible by 3 and not exceeding n. - _Max Alekseyev_, Jan 06 2008
%e a(3) = 5 since 3^3 is the 5th 3-almost-prime: 8,12,18,20,27,....., A014612.
%t AlmostPrimePi[k_Integer /; k > 1, n_] := Module[{a, i}, a[0] = 1; Sum[PrimePi[n/Times @@ Prime[Array[a, k - 1]]] - a[k - 1] + 1, Evaluate[Sequence @@ Table[{a[i], a[i - 1], PrimePi[(n/Times @@ Prime[Array[a, i - 1]])^(1/(k - i + 1))]}, {i, k - 1}]]]]; (* _Eric W. Weisstein_, Feb 07 2006 *)
%t Table[ AlmostPrimePi[n, 3^n], {n, 2, 37}] (* _Robert G. Wilson v_, Feb 09 2006 *)
%o (PARI) a(n)=sum(i=1,3^n,if(bigomega(i)-n,0,1))
%o (PARI)
%o { appi(k,n,m=2) = local(r=0);
%o if(k==0,return(1));
%o if(k==1,return(primepi(n)));
%o forprime(p=m, floor(sqrtn(n,k)+1e-20),
%o r+=appi(k-1,n\p,p)-(k==2)*(primepi(p)-1));
%o r }
%o { appi3(k,n) = appi(k,n) - if(k>=1,appi(k-1,n\3)) }
%o a=1; for(n=1,50, k=ceil(n*log(5/3)/log(5/2)); a+=appi3(n-k,3^n\2^k); print1(a,", "))
%o \\ _Max Alekseyev_, Jan 06 2008
%o (Python)
%o from math import isqrt, prod
%o from sympy import primerange, integer_nthroot, primepi
%o def A078843(n):
%o def almostprimepi(n,k):
%o def g(x,a,b,c,m): yield from (((d,) for d in enumerate(primerange(b,isqrt(x//c)+1),a)) if m==2 else (((a2,b2),)+d for a2,b2 in enumerate(primerange(b,integer_nthroot(x//c,m)[0]+1),a) for d in g(x,a2,b2,c*b2,m-1)))
%o return int(sum(primepi(n//prod(c[1] for c in a))-a[-1][0] for a in g(n,0,1,1,k)) if k>1 else primepi(n))
%o return almostprimepi(3**n,n) if n else 1 # _Chai Wah Wu_, Sep 01 2024
%Y Cf. A078840, A078841, A078842, A078844, A078845, A078846.
%K nonn
%O 0,2
%A _Benoit Cloitre_ and _Paul D. Hanna_, Dec 10 2002
%E a(14)-a(37) from _Robert G. Wilson v_, Feb 09 2006