Project Euler 668 - Square root smooth numbers

Official link:

Note: My code is too slow for this problem. It takes ~400 Seconds

Thought Process

Originally I tried to brute force it as usual and could get up to 10^7 by making a decently efficient sieve for finding the max prime factor of a number (See OEIS), but this then led me too which are exactly the numbers we are looking for an subsequently where I found an interesting property which I then proved to be able to solve the problem, as I recognised that this could be solved using SymPy PrimePi function

Interactive Code

Enter an integer (yourinput)

Input < 10^8 as my code is a bit too slow: The value for 10^8 is 27531694, and for 10^9 is 278418003

Code will output the number of square root smooth numbers not exceeding yourinput