#include #define ll long long int using namespace std; bool visit[1000006]; long long least_prime[1000006]; long long large_prime[1001],large_prime_small_range[1000003]; bool prime[10000006]; bool isPrime(long long int n) { if (n <= 1) return false; if (n <= 3) return true; if (n%2 == 0 || n%3 == 0) return false; for (long long int i=5; i*i<=n; i=i+6) if (n%i == 0 || n%(i+2) == 0) return false; return true; } void LeastPrimeFactor(){ long long tot=1000003; least_prime[1]=1; for (ll i = 2; i > n; long long ar[n+4]; for (int i = 0; i < n; i++) { cin >> ar[i]; } solve(ar,n); for(int i=0;i1000001) { maxm=0; for(ll j =1;j<=sqrt(d);j++) { if(d%j==0) { if(d/j==j) { if(prime[j]) maxm=max(maxm,j); } else { if(prime[j]) maxm=max(maxm,j); if(d/j < 1000005) { if(prime[d/j]) maxm=max(maxm,d/j); } else if(isPrime(d/j)) maxm=max(maxm,d/j); } } } pr=maxm; } else pr=large_prime_small_range[d]; } ans++; sum+=ans; } cout<