为什么这一题我WA了(14WA)?
#include <bits/stdc++.h>
#define int long long
using namespace std;
vector<int> primes;
bool is_prime(int x) {
if (x == 1) return false;
for (int i = 2; i * i <= x; i++) {
if (x % i == 0) {
return false;
}
}
return true;
}
signed main() {
ios::sync_with_stdio(false);
cin.tie(NULL); cout.tie(NULL);
int n;
cin >> n;
for (int i = 1; i <= 100000; i++) {
if (is_prime(i)) {
primes.push_back(i);
}
}
int ans = 0;
for (int i = 0; i < primes.size(); i++) {
for (int j = i + 1; j < primes.size(); j++) {
int k = 1ll * primes[i] * primes[j] * primes[j] * primes[j];
if (k < 1) break;
if (k <= n) ans++;
}
}
cout << ans << endl;
return 0;
}