#include <cstdio>
#include <cstring>
#include <cmath>
bool isp[5000000 + 5];
int main()
{
int l, r;
scanf("%d %d", &l, &r);
int m = sqrt(r + 0.5);
memset(isp, true, sizeof(isp));
isp[0] = isp[1] = false;
for (int i = 2; i <= m; i++)
{
if (isp[i] == true)
{
for (int j = i * i; j <= r; j += i)
{
isp[j] = false;
}
}
}
int cnt = 0;
for (int i = l; i <= r; i++)
{
if (isp[i] == true)
{
cnt++;
}
}
printf("%d\n", cnt);
}
【codevs1453 統計素數個數2】E氏篩法
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.