Advertisement
Guest User

Untitled

a guest
Jan 17th, 2020
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.62 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. int maxx=1000000;
  4. vector<bool> isPrime(maxx+3,true);
  5. vector<int> primes;
  6. void SievePrimeNumbers()
  7. {
  8. for(int i=2 ; i*i<=maxx ; i+=2 )
  9. if(isPrime[i])
  10. {
  11. primes.push_back(i);
  12. for(int j=i*2 ; j<=maxx ; j+=i)
  13. isPrime[i] = false;
  14. }
  15. }
  16. int main()
  17. {
  18. int n;
  19. SievePrimeNumbers();
  20. while( cin>>n)
  21. {
  22. int powCnt=0;
  23. for(int i=0 ; i<primes.size() ; i++)
  24. for(int j=primes[i] ; j<=n ; j=j*primes[i] )
  25. powCnt+=n/j;
  26. printf("%d\n",powCnt);
  27. }
  28. return 0;
  29. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement