fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. int main() {
  5. int n;
  6. cin >> n;
  7.  
  8. vector<int> cnt(n + 1, 0);
  9.  
  10.  
  11. for (int i = 2; i <= n; i++) {
  12. if (cnt[i] == 0) {
  13. for (int j = i; j <= n; j += i) {
  14. int x = j;
  15. while (x % i == 0) {
  16. cnt[j]++;
  17. x /= i;
  18. }
  19. }
  20. }
  21. }
  22.  
  23. vector<bool> prime(n + 1, true);
  24. prime[0] = prime[1] = false;
  25.  
  26. for (int i = 2; i * i <= n; i++) {
  27. if (prime[i]) {
  28. for (int j = i * i; j <= n; j += i) {
  29. prime[j] = false;
  30. }
  31. }
  32. }
  33.  
  34. int ans = 0;
  35.  
  36. for (int i = 2; i <= n; i++) {
  37. if (prime[cnt[i]]) {
  38. ans++;
  39. }
  40. }
  41.  
  42. cout << ans;
  43. }
Success #stdin #stdout 0.01s 5320KB
stdin
Standard input is empty
stdout
14062