请求添加题解
查看原帖
请求添加题解
1074084
asd890123楼主2024/4/5 16:42

理由:没有使用筛法和打表。```cpp #include

using namespace std;

#define endl '\n' #define il inline #define re register

int prime[5140];

il bool G(re int x){

if (x < 2) return 0;
if (x == 2) return 1;
for (re int i = 2;i * i <= x;i++)
    if (x % i == 0)
        return 0;
return 1;

}

il bool P(re int x){

if (x < 2) return 0;
if (x == 2) return 1;
for (re int i = 0;i < 5133 && prime[i] * prime[i] <= x;i++)
    if (x % prime[i] == 0)
        return 0;
return 1;

}

int main(){

ios::sync_with_stdio(0);
cin.tie(0),cout.tie(0);

re int l,r,pail = 0,ans = 0;

cin >> l >> r;
for (re int i = 2;i <= 50000;i++)
    if (G(i))
        prime[pail++] = i;
for (re int i = l;i <= r;i++)
    if (P(i))
        ans++;
cout << ans << endl;

return 0;

}

2024/4/5 16:42
加载中...