reviewed
approved
reviewed
approved
proposed
reviewed
editing
proposed
return bisection(f, n, n) # Chai Wah Wu, Sep 16 2024
proposed
editing
editing
proposed
(Python)
from sympy import integer_log
def A108347(n):
def bisection(f, kmin=0, kmax=1):
while f(kmax) > kmax: kmax <<= 1
while kmax-kmin > 1:
kmid = kmax+kmin>>1
if f(kmid) <= kmid:
kmax = kmid
else:
kmin = kmid
return kmax
def f(x):
c = n+x
for i in range(integer_log(x, 7)[0]+1):
for j in range(integer_log(m:=x//7**i, 5)[0]+1):
c -= integer_log(m//5**j, 3)[0]+1
return c
return bisection(f, n, n) # Chai Wah Wu, Sep 16 2024
approved
editing
editing
approved
# alternative
isA108347 := proc(n)
if n = 1 then
true;
else
return (numtheory[factorset](n) minus {3, 5, 7} = {} );
end if;
end proc:
A108347 := proc(n)
option remember;
if n = 1 then
1;
else
for a from procname(n-1)+1 do
if isA108347(a) then
return a;
end if;
end do:
end if;
end proc:
seq(A108347(n), n=1..80); # R. J. Mathar, Jun 06 2024
approved
editing
(MAGMAMagma) [n: n in [1..4000] | PrimeDivisors(n) subset [3, 5, 7]]; // Bruno Berselli, Sep 24 2012
editing
approved